0001558370-24-004095.txt : 20240327 0001558370-24-004095.hdr.sgml : 20240327 20240327165245 ACCESSION NUMBER: 0001558370-24-004095 CONFORMED SUBMISSION TYPE: 10-K PUBLIC DOCUMENT COUNT: 120 CONFORMED PERIOD OF REPORT: 20231231 FILED AS OF DATE: 20240327 DATE AS OF CHANGE: 20240327 FILER: COMPANY DATA: COMPANY CONFORMED NAME: Consolidated Water Co. Ltd. CENTRAL INDEX KEY: 0000928340 STANDARD INDUSTRIAL CLASSIFICATION: WATER SUPPLY [4941] ORGANIZATION NAME: 01 Energy & Transportation 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: 24791573 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 10-K 1 cwco-20231231x10k.htm 10-K
0000928340--12-312023FYfalseKY34383442971532287515771545http://fasb.org/us-gaap/2023#UsefulLifeShorterOfTermOfLeaseOrAssetUtilityMember0.110.11P15YP4YP7DP30DP3YP3YP45DP20Y0000928340us-gaap:RetainedEarningsMember2023-12-310000928340us-gaap:NoncontrollingInterestMember2023-12-310000928340us-gaap:AdditionalPaidInCapitalMember2023-12-310000928340us-gaap:RetainedEarningsMember2022-12-310000928340us-gaap:NoncontrollingInterestMember2022-12-310000928340us-gaap:AdditionalPaidInCapitalMember2022-12-310000928340us-gaap:RetainedEarningsMember2021-12-310000928340us-gaap:NoncontrollingInterestMember2021-12-310000928340us-gaap:AdditionalPaidInCapitalMember2021-12-310000928340us-gaap:RedeemablePreferredStockMemberus-gaap:PreferredStockMember2023-12-310000928340us-gaap:CommonStockMember2023-12-310000928340us-gaap:RedeemablePreferredStockMemberus-gaap:PreferredStockMember2022-12-310000928340us-gaap:CommonStockMember2022-12-310000928340us-gaap:RedeemablePreferredStockMemberus-gaap:PreferredStockMember2021-12-310000928340us-gaap:CommonStockMember2021-12-310000928340cwco:EmployeesMembercwco:BelowMarketPriceMemberus-gaap:PreferredStockMember2023-01-012023-12-310000928340cwco:EmployeesMembercwco:AtMarketPriceMemberus-gaap:CommonStockMember2023-01-012023-12-310000928340cwco:EmployeesMembercwco:AboveMarketPriceMemberus-gaap:PreferredStockMember2023-01-012023-12-310000928340cwco:ManagementEmployeesMembercwco:AtMarketPriceMember2023-01-012023-12-310000928340cwco:ManagementEmployeesMembercwco:AboveMarketPriceMember2023-01-012023-12-310000928340cwco:BelowMarketPriceMember2023-01-012023-12-310000928340cwco:AtMarketPriceMember2023-01-012023-12-310000928340cwco:AboveMarketPriceMember2023-01-012023-12-310000928340cwco:EmployeesMembercwco:BelowMarketPriceMemberus-gaap:PreferredStockMember2022-01-012022-12-310000928340cwco:EmployeesMembercwco:AtMarketPriceMemberus-gaap:CommonStockMember2022-01-012022-12-310000928340cwco:EmployeesMembercwco:AboveMarketPriceMemberus-gaap:PreferredStockMember2022-01-012022-12-310000928340cwco:ManagementEmployeesMembercwco:AtMarketPriceMember2022-01-012022-12-310000928340cwco:ManagementEmployeesMembercwco:AboveMarketPriceMember2022-01-012022-12-310000928340cwco:BelowMarketPriceMember2022-01-012022-12-310000928340cwco:AtMarketPriceMember2022-01-012022-12-310000928340cwco:AboveMarketPriceMember2022-01-012022-12-310000928340cwco:NonExecutiveDirectorsSharePlanMemberus-gaap:RedeemablePreferredStockMember2023-01-012023-12-310000928340cwco:CommonStockOptionsMemberus-gaap:EmployeeStockOptionMember2023-01-012023-12-310000928340cwco:CommonStockOptionsMemberus-gaap:EmployeeStockOptionMember2022-01-012022-12-310000928340cwco:NonperformancebasedGrantsMember2022-01-012022-12-310000928340cwco:NonExecutiveDirectorsSharePlanMember2023-01-012023-12-310000928340cwco:NonExecutiveDirectorsSharePlanMember2022-01-012022-12-310000928340cwco:ServicesRevenuesMemberus-gaap:TransferredOverTimeMember2023-01-012023-12-310000928340cwco:ServicesRevenuesMemberus-gaap:TransferredAtPointInTimeMember2023-01-012023-12-310000928340cwco:ServicesRevenuesMember2023-01-012023-12-310000928340cwco:RetailRevenuesMember2023-01-012023-12-310000928340cwco:OperationsAndMaintenanceMember2023-01-012023-12-310000928340cwco:ManufacturingRevenuesMember2023-01-012023-12-310000928340cwco:DesignAndConsultingServicesMember2023-01-012023-12-310000928340cwco:ConstructionSevicesMember2023-01-012023-12-310000928340cwco:BulkRevenuesMember2023-01-012023-12-310000928340country:VG2023-01-012023-12-310000928340country:US2023-01-012023-12-310000928340country:KY2023-01-012023-12-310000928340country:BS2023-01-012023-12-310000928340cwco:ServicesRevenuesMemberus-gaap:TransferredOverTimeMember2022-01-012022-12-310000928340cwco:ServicesRevenuesMemberus-gaap:TransferredAtPointInTimeMember2022-01-012022-12-310000928340cwco:ServicesRevenuesMember2022-01-012022-12-310000928340cwco:RetailRevenuesMember2022-01-012022-12-310000928340cwco:OperationsAndMaintenanceMember2022-01-012022-12-310000928340cwco:ManufacturingRevenuesMember2022-01-012022-12-310000928340cwco:DesignAndConsultingServicesMember2022-01-012022-12-310000928340cwco:ConstructionSevicesMember2022-01-012022-12-310000928340cwco:BulkRevenuesMember2022-01-012022-12-310000928340country:VG2022-01-012022-12-310000928340country:US2022-01-012022-12-310000928340country:KY2022-01-012022-12-310000928340country:BS2022-01-012022-12-310000928340cwco:ContractWithCustomerInProgressMembersrt:ScenarioForecastMember2025-01-012025-12-310000928340cwco:ContractWithCustomerInProgressMembersrt:ScenarioForecastMember2024-01-012024-12-310000928340us-gaap:GeneralAndAdministrativeExpenseMember2023-01-012023-12-310000928340us-gaap:CostOfSalesMember2023-01-012023-12-310000928340us-gaap:GeneralAndAdministrativeExpenseMember2022-01-012022-12-310000928340us-gaap:CostOfSalesMember2022-01-012022-12-310000928340srt:MinimumMemberus-gaap:VehiclesMember2023-12-310000928340srt:MinimumMemberus-gaap:FurnitureAndFixturesMember2023-12-310000928340srt:MinimumMemberus-gaap:BuildingMember2023-12-310000928340srt:MinimumMembercwco:PlantAndEquipmentMember2023-12-310000928340srt:MinimumMembercwco:LabEquipmentMember2023-12-310000928340srt:MinimumMembercwco:DistributionSystemsMember2023-12-310000928340srt:MaximumMemberus-gaap:VehiclesMember2023-12-310000928340srt:MaximumMemberus-gaap:FurnitureAndFixturesMember2023-12-310000928340srt:MaximumMemberus-gaap:BuildingMember2023-12-310000928340srt:MaximumMembercwco:PlantAndEquipmentMember2023-12-310000928340srt:MaximumMembercwco:LabEquipmentMember2023-12-310000928340srt:MaximumMembercwco:DistributionSystemsMember2023-12-310000928340country:US2023-12-310000928340country:KY2023-12-310000928340country:BS2023-12-310000928340country:US2022-12-310000928340country:KY2022-12-310000928340country:BS2022-12-310000928340us-gaap:VehiclesMember2023-12-310000928340us-gaap:LeaseholdImprovementsMember2023-12-310000928340us-gaap:LandMember2023-12-310000928340us-gaap:FurnitureAndFixturesMember2023-12-310000928340us-gaap:BuildingMember2023-12-310000928340cwco:PlantAndEquipmentMember2023-12-310000928340cwco:LabEquipmentMember2023-12-310000928340cwco:DistributionSystemsMember2023-12-310000928340us-gaap:VehiclesMember2022-12-310000928340us-gaap:LeaseholdImprovementsMember2022-12-310000928340us-gaap:LandMember2022-12-310000928340us-gaap:FurnitureAndFixturesMember2022-12-310000928340us-gaap:BuildingMember2022-12-310000928340cwco:PlantAndEquipmentMember2022-12-310000928340cwco:LabEquipmentMember2022-12-310000928340cwco:DistributionSystemsMember2022-12-310000928340cwco:CapitalizedEngineeringLaborAndMaterialsCostMember2023-12-310000928340us-gaap:StateAndLocalJurisdictionMember2023-12-310000928340us-gaap:DomesticCountryMember2023-12-310000928340us-gaap:SegmentDiscontinuedOperationsMember2023-12-310000928340us-gaap:SegmentDiscontinuedOperationsMember2022-12-310000928340us-gaap:ChangeInAccountingMethodAccountedForAsChangeInEstimateMembercwco:ServicesRevenuesMember2023-01-012023-12-310000928340cwco:PercWaterCorporationMember2022-01-012022-12-310000928340cwco:PercWaterCorporationMember2023-01-040000928340cwco:NSCAguaMember2018-02-280000928340srt:MinimumMember2022-02-092022-02-0900009283402022-02-092022-02-090000928340cwco:WaterStockMember2023-12-310000928340cwco:SparePartsStockMember2023-12-310000928340cwco:MaterialRawMember2023-12-310000928340cwco:ConsumablesStockMember2023-12-310000928340cwco:WaterStockMember2022-12-310000928340cwco:SparePartsStockMember2022-12-310000928340cwco:MaterialRawMember2022-12-310000928340cwco:ConsumablesStockMember2022-12-3100009283402022-01-012023-12-310000928340us-gaap:ChangeInAccountingMethodAccountedForAsChangeInEstimateMember2023-01-012023-12-310000928340cwco:RameyEnvironmentalComplianceIncMember2023-11-300000928340cwco:ProfessionalsFeeMember2023-01-012023-12-310000928340cwco:OtherCreditDeviceMember2023-01-012023-12-310000928340cwco:OfficeRentMember2023-01-012023-12-310000928340cwco:InvestorRelationsMember2023-01-012023-12-310000928340cwco:DirectorsFeesAndExpensesMember2023-01-012023-12-310000928340cwco:DepreciationMember2023-01-012023-12-310000928340cwco:ComputerSuppliesSoftwareLicensesMember2023-01-012023-12-310000928340cwco:BusinessDevelopmentExpensesMember2023-01-012023-12-310000928340cwco:BankChargesMember2023-01-012023-12-310000928340cwco:BadDebtExpenseMember2023-01-012023-12-310000928340cwco:AmortizationOfIntangiblesMember2023-01-012023-12-310000928340cwco:ProfessionalsFeeMember2022-01-012022-12-310000928340cwco:OtherCreditDeviceMember2022-01-012022-12-310000928340cwco:OfficeRentMember2022-01-012022-12-310000928340cwco:InvestorRelationsMember2022-01-012022-12-310000928340cwco:DirectorsFeesAndExpensesMember2022-01-012022-12-310000928340cwco:DepreciationMember2022-01-012022-12-310000928340cwco:ComputerSuppliesSoftwareLicensesMember2022-01-012022-12-310000928340cwco:BusinessDevelopmentExpensesMember2022-01-012022-12-310000928340cwco:BankChargesMember2022-01-012022-12-310000928340cwco:AmortizationOfIntangiblesMember2022-01-012022-12-310000928340us-gaap:TradeNamesMember2023-12-310000928340us-gaap:NoncompeteAgreementsMember2023-12-310000928340us-gaap:CustomerRelationshipsMember2023-12-310000928340cwco:ManagementContractsMember2023-12-310000928340us-gaap:TradeNamesMember2022-12-310000928340cwco:ManagementContractsMember2022-12-310000928340cwco:NSCAguaMembercwco:AguasDeRosaritoSapiDeCvMember2016-08-310000928340us-gaap:EmployeeStockOptionMember2023-12-310000928340us-gaap:SegmentDiscontinuedOperationsMembercwco:MexicoProjectDevelopmentMember2023-01-012023-12-310000928340us-gaap:SegmentDiscontinuedOperationsMembercwco:MexicoProjectDevelopmentMember2022-01-012022-12-310000928340us-gaap:OtherPostretirementBenefitPlansDefinedBenefitMember2023-01-012023-12-310000928340us-gaap:OtherPostretirementBenefitPlansDefinedBenefitMember2022-01-012022-12-310000928340us-gaap:OtherExpenseMember2023-01-012023-12-310000928340us-gaap:MaintenanceMember2023-01-012023-12-310000928340us-gaap:ElectricityMember2023-01-012023-12-310000928340cwco:SubcontractorAndOtherProjectCostsMember2023-01-012023-12-310000928340cwco:ServicesMember2023-01-012023-12-310000928340cwco:SegmentRetailMember2023-01-012023-12-310000928340cwco:RoyaltiesMember2023-01-012023-12-310000928340cwco:ManufacturingUnitsMember2023-01-012023-12-310000928340cwco:InsuranceMember2023-01-012023-12-310000928340cwco:FuelOilMember2023-01-012023-12-310000928340cwco:EmployeeCostsMember2023-01-012023-12-310000928340cwco:CostOfPlantSalesMember2023-01-012023-12-310000928340cwco:BulkMember2023-01-012023-12-310000928340us-gaap:OtherExpenseMember2022-01-012022-12-310000928340us-gaap:MaintenanceMember2022-01-012022-12-310000928340us-gaap:ElectricityMember2022-01-012022-12-310000928340cwco:SubcontractorAndOtherProjectCostsMember2022-01-012022-12-310000928340cwco:ServicesMember2022-01-012022-12-310000928340cwco:SegmentRetailMember2022-01-012022-12-310000928340cwco:RoyaltiesMember2022-01-012022-12-310000928340cwco:ManufacturingUnitsMember2022-01-012022-12-310000928340cwco:InsuranceMember2022-01-012022-12-310000928340cwco:FuelOilMember2022-01-012022-12-310000928340cwco:EmployeeCostsMember2022-01-012022-12-310000928340cwco:CostOfPlantSalesMember2022-01-012022-12-310000928340cwco:BulkMember2022-01-012022-12-310000928340cwco:ContractWithCustomerInProgressMember2023-01-012023-12-310000928340cwco:PercWaterCorporationMember2023-01-310000928340us-gaap:CommonClassBMember2023-12-310000928340us-gaap:CommonClassAMember2023-12-310000928340us-gaap:CommonClassBMember2022-12-310000928340us-gaap:CommonClassAMember2022-12-310000928340cwco:EquityIncentivePlan2008Member2008-05-140000928340us-gaap:CertificatesOfDepositMember2023-12-310000928340us-gaap:CertificatesOfDepositMember2022-12-310000928340currency:USD2023-12-310000928340currency:KYD2023-12-310000928340currency:BSD2023-12-310000928340currency:USD2022-12-310000928340currency:KYD2022-12-310000928340currency:BSD2022-12-310000928340cwco:RameyEnvironmentalComplianceInc.Member2023-10-310000928340cwco:RameyEnvironmentalComplianceIncMember2023-11-012023-11-300000928340cwco:PercWaterCorporationMember2023-01-012023-01-310000928340cwco:PercWaterCorporationMember2023-01-012023-01-310000928340cwco:RameyEnvironmentalComplianceIncMember2023-10-010000928340cwco:PercWaterCorporationMember2023-01-310000928340cwco:PercWaterCorporationMember2023-01-040000928340cwco:NSCAguaMember2012-12-3100009283402021-12-310000928340us-gaap:RedeemablePreferredStockMemberus-gaap:PreferredStockMember2022-01-012022-12-310000928340us-gaap:RetainedEarningsMember2022-01-012022-12-310000928340us-gaap:NoncontrollingInterestMember2022-01-012022-12-310000928340us-gaap:CommonStockMember2022-01-012022-12-310000928340us-gaap:AdditionalPaidInCapitalMember2022-01-012022-12-310000928340cwco:RameyEnvironmentalComplianceInc.Memberus-gaap:TradeNamesMember2023-10-012023-10-310000928340cwco:RameyEnvironmentalComplianceInc.Memberus-gaap:NoncompeteAgreementsMember2023-10-012023-10-310000928340cwco:RameyEnvironmentalComplianceInc.Memberus-gaap:CustomerRelationshipsMember2023-10-012023-10-310000928340cwco:PercWaterCorporationMemberus-gaap:CustomerRelationshipsMember2019-10-012019-10-310000928340us-gaap:TradeNamesMember2016-02-012016-02-290000928340cwco:WSCMember2023-12-310000928340cwco:WSCMember2022-12-310000928340cwco:PercWaterCorporationMember2022-12-3100009283402023-06-3000009283402024-03-200000928340cwco:NSCAguaMembercwco:OptionAgreementMember2013-05-310000928340cwco:PerformancebasedGrantsMember2023-01-012023-12-310000928340cwco:NonperformancebasedGrantsMember2023-01-012023-12-310000928340cwco:PerformancebasedGrantsMember2022-01-012022-12-310000928340cwco:KalaeloaDesalcoMember2023-06-022023-06-020000928340cwco:SecondPhaseMembercwco:NSCAguaMember2016-08-222016-08-220000928340cwco:FirstPhaseMembercwco:NSCAguaMember2016-08-222016-08-220000928340cwco:NSCAguaMember2010-05-012010-05-310000928340us-gaap:RedeemablePreferredStockMemberus-gaap:PreferredStockMember2023-01-012023-12-310000928340us-gaap:RetainedEarningsMember2023-01-012023-12-310000928340us-gaap:NoncontrollingInterestMember2023-01-012023-12-310000928340us-gaap:CommonStockMember2023-01-012023-12-310000928340us-gaap:AdditionalPaidInCapitalMember2023-01-012023-12-310000928340cwco:NSCAguaMember2016-08-222016-08-220000928340cwco:ConsolidatedWaterBahamasMember2023-12-310000928340cwco:ConsolidatedWaterBahamasMember2022-12-310000928340cwco:NSCAguaMember2012-01-012012-12-310000928340us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember2023-12-310000928340us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember2022-12-3100009283402020-06-292020-06-290000928340srt:MinimumMember2023-01-012023-12-310000928340srt:MaximumMember2023-01-012023-12-310000928340cwco:GuidelinePublicCompanyMethodMembercwco:AerexIndustriesIncMembercwco:ManufacturingUnitsMember2022-01-012022-12-310000928340cwco:DiscountedCashFlowMethodMembercwco:AerexIndustriesIncMembercwco:ManufacturingUnitsMember2022-01-012022-12-310000928340cwco:PercWaterCorporationMember2022-01-012022-12-310000928340cwco:GuidelinePublicCompanyMethodMembercwco:AerexIndustriesIncMembercwco:ManufacturingUnitsMember2021-01-012021-06-300000928340cwco:DiscountedCashFlowMethodMembercwco:AerexIndustriesIncMembercwco:ManufacturingUnitsMember2021-01-012021-06-300000928340cwco:GuidelinePublicCompanyMethodMembercwco:AerexIndustriesIncMembercwco:ManufacturingUnitsMember2020-01-012020-12-310000928340cwco:DiscountedCashFlowMethodMembercwco:AerexIndustriesIncMembercwco:ManufacturingUnitsMember2020-01-012020-12-310000928340cwco:AerexIndustriesIncMembercwco:ManufacturingUnitsMember2021-06-300000928340cwco:AerexIndustriesIncMembercwco:ManufacturingUnitsMember2022-01-012022-12-310000928340cwco:AerexIndustriesIncMembercwco:ManufacturingUnitsMember2020-01-012020-12-310000928340cwco:WaterAndSewerageCorporationMember2023-01-012023-12-310000928340cwco:OneCustomerMember2023-01-012023-12-310000928340cwco:WaterAndSewerageCorporationMember2022-01-012022-12-310000928340cwco:OneCustomerMember2022-01-012022-12-3100009283402022-10-012022-12-3100009283402022-07-012022-09-3000009283402022-04-012022-06-3000009283402022-01-012022-03-3100009283402021-10-012021-12-3100009283402021-07-012021-09-3000009283402021-04-012021-06-3000009283402021-01-012021-03-310000928340us-gaap:SegmentDiscontinuedOperationsMembercwco:MexicoProjectDevelopmentMember2023-12-310000928340us-gaap:SegmentDiscontinuedOperationsMembercwco:MexicoProjectDevelopmentMember2022-12-3100009283402020-08-282020-08-280000928340us-gaap:SegmentDiscontinuedOperationsMember2023-12-310000928340us-gaap:SegmentDiscontinuedOperationsMember2022-12-310000928340us-gaap:CommonStockMember2023-01-012023-12-310000928340us-gaap:RedeemablePreferredStockMember2022-01-012022-12-310000928340us-gaap:CommonStockMember2022-01-012022-12-3100009283402022-01-012022-12-310000928340cwco:NSCAguaMember2023-07-280000928340cwco:ServicesMember2023-12-310000928340cwco:SegmentRetailMember2023-12-310000928340cwco:ManufacturingUnitsMember2023-12-310000928340cwco:BulkMember2023-12-310000928340cwco:ServicesMember2022-12-310000928340cwco:SegmentRetailMember2022-12-310000928340cwco:ManufacturingUnitsMember2022-12-310000928340cwco:BulkMember2022-12-3100009283402023-01-012023-12-310000928340us-gaap:RedeemablePreferredStockMember2023-01-012023-12-3100009283402023-12-3100009283402022-12-31iso4217:USDutr:galiso4217:MXNxbrli:pureiso4217:USDxbrli:sharesxbrli:sharesutr:ha

UNITED STATES

SECURITIES AND EXCHANGE COMMISSION

Washington, DC 20549

FORM 10-K

(Mark One)

       ANNUAL REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934

For the fiscal year ended December 31, 2023

OR

       TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934

For the transition period from __________________ to __________________

Commission File Number: 0-25248

CONSOLIDATED WATER CO. LTD.

(Exact name of Registrant as specified in its charter)

CAYMAN ISLANDS

 

98-0619652

(State or other jurisdiction of

 

(I.R.S. Employer Identification No.)

incorporation or organization)

 

 

 

 

 

Regatta Office Park

 

 

Windward Three, 4th Floor, West Bay Road

 

 

P.O. Box 1114

 

 

Grand Cayman, KY1-1102, Cayman Islands

 

N/A

(Address of principal executive offices)

 

(Zip Code)

Registrant’s telephone number, including area code: (345) 945-4277

Securities registered pursuant to Section 12(b) of the Act:

Title of each class:

Trading Symbol

 

Name of each exchange on which registered

Common Stock, $0.60 Par Value

CWCO

 

The NASDAQ Stock Market LLC (NASDAQ Global Select Market)

Securities registered pursuant to Section 12(g) of the Act: None

Indicate by check mark if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act.

Yes        No

Indicate by check mark if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.

Yes        No

Indicate by check mark whether the registrant (1) has 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 the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.

Yes    No

Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (Sec. 232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).

Yes        No

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 “large accelerated filer,” “accelerated filer,” “smaller reporting company,” and “emerging growth company” in Rule 12b-2 of the Exchange Act.

Large accelerated filer

Accelerated filer

Non-accelerated filer

Smaller reporting company

 

 

 

Emerging growth company

If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act.

Indicate by check mark whether the registrant has filed a report on and attestation to its management’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.         

If securities are registered pursuant to Section 12(b) of the Act, indicate by check mark whether the financial statements of the registrant included in the filing reflect the correction of an error to previously issued financial statements.

Indicate by check mark whether any of those error corrections are restatements that required a recovery analysis of incentive-based compensation received by any of the registrant’s executive officers during the relevant recovery period pursuant to §240.10D-1(b).

Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act).

Yes        No

The aggregate market value of common stock held by non-affiliates of the registrant, based on the closing sales price for the registrant’s common shares, as reported on the NASDAQ Global Select Market on June 30, 2023, was $360,491,856.

As of March 20, 2024, 15,802,187 shares of the registrant’s common shares were outstanding.

DOCUMENTS INCORPORATED BY REFERENCE:

Portions of the registrant’s Proxy Statement related to its 2024 Annual Shareholders’ Meeting will be subsequently filed with the Securities and Exchange Commission and are incorporated by reference into Part III of this Form 10-K.

TABLE OF CONTENTS

   

Section

Description

Page

Cautionary Note Regarding Forward-Looking Statements

3

PART I

4

Item 1.

Business

4

Item 1A.

Risk Factors

15

Item 1B.

Unresolved Staff Comments

21

Item 1C.

Cybersecurity

21

Item 2.

Properties

22

Item 3.

Legal Proceedings

24

Item 4.

Mine Safety Disclosures

25

PART II

 

25

Item 5.

Market for Registrant’s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities

25

Item 6.

[Reserved]

26

Item 7.

Management’s Discussion and Analysis of Financial Condition and Results of Operations

27

Item 7A.

Quantitative and Qualitative Disclosure about Market Risk

40

Item 8.

Financial Statements and Supplementary Data

41

Item 9.

Changes in and Disagreements with Accountants on Accounting and Financial Disclosure

75

Item 9A.

Controls and Procedures

75

Item 9B.

Other Information

77

Item 9C.

Disclosure Regarding Foreign Jurisdictions that Prevent Inspections

77

PART III

77

Item 10.

Directors, Executive Officers and Corporate Governance

77

Item 11.

Executive Compensation

77

Item 12.

Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters

77

Item 13.

Certain Relationships and Related Transactions, and Director Independence

78

Item 14.

Principal Accounting Fees and Services

78

PART IV

78

Item 15.

Exhibits, Financial Statement Schedules

78

SIGNATURES

84

2

CAUTIONARY NOTE REGARDING FORWARD-LOOKING STATEMENTS

This Annual Report on Form 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 “will,” “will likely result,” “are expected to,” “will continue,” “estimate,” “project,” “potential,” “believe,” “plan,” “anticipate,” “expect,” “intend,” 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.

The forward-looking statements contained in this report are not guarantees of future performance and involve assumptions and certain risks and uncertainties 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:

tourism and weather conditions in the areas we serve;
the economic, political and social conditions of each country in which we conduct or plan to conduct business;
our relationships with the government entities and other customers we serve;
regulatory matters, including resolution of the negotiations for the renewal of our retail license on Grand Cayman;
our ability to successfully enter new markets; and
other factors, including those “Risk Factors” set forth under Part I, Item 1A. “Risk Factors” in this Annual Report.

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.

References herein to “we,” “our,” “ours” and “us” refer to Consolidated Water Co. Ltd. and its subsidiaries.

Note Regarding Currency and Exchange Rates

Unless otherwise indicated, all references to “$” or “US$” are to United States dollars.

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 1974 at US$1.20 per CI$1.00.

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.

The official currency of the British Virgin Islands is the US$.

3

PART I

ITEM 1.

BUSINESS

Overview

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:

Retail Water Operations. 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 2023, our retail water operations generated approximately 17% of our consolidated revenue.

Bulk Water Operations. 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 2023, our bulk water operations generated approximately 19% of our consolidated revenue.

Services Operations. 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 2023, our services operations generated approximately 54% of our consolidated revenue.

Manufacturing Operations. 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 2023, our manufacturing operations generated approximately 10% of our consolidated revenue.

Affiliate Operations. 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.

As of December 31, 2023, 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:

Water Production Plant Location

    

Plants

    

Capacity(1)

Cayman Islands

 

6

9.3

Bahamas

 

2

14.8

British Virgin Islands

 

2

0.8

Total

 

10

 

24.9

(1)

In millions of gallons per day.

Water Treatment Plant Location

    

Plants

    

Capacity(1)

United States

 

31

59.7

(1)

In estimated millions of gallons per day.

As of December 31, 2023, Ramey Environmental Compliance, Inc. performed operations, maintenance, and monitoring services for 72 wastewater and water treatment plants located in the Rocky Mountain and Eastern Plains Regions of Colorado.

4

Strategy

We are a comprehensive water solutions company that serves a variety of customers through multiple product and service offerings. Presently, we:

produce and sell potable water through the design, construction and operation of water infrastructure that employs reverse osmosis technology to produce potable water from seawater;
design, construct, sell, operate and manage water production, water treatment and water reuse system infrastructure that meets regulatory, environmental and commercial needs and requirements;
fabricate/manufacture specialized and custom equipment and products employed in the production and treatment of water for municipal, commercial and industrial purposes; and
provide water-related management and consulting services.

We expect to continue to expand and diversify our products, services and markets to meet the ever-expanding global demand for water.

Key elements of our strategy include:

Market expansion. 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 United States and the Caribbean. We may also pursue business in other markets where we believe we can be successful.

Complementary products, services and businesses. We continue to pursue acquisitions or joint ventures that (i) complement and enhance our existing businesses; (ii) expand our product and service offerings and markets; and (iii) support our objective to be a comprehensive water solutions provider.

Our Company

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 as of December 31, 2023 is as follows:

Graphic

5

Retail Segment

Cayman Water Company Limited (“Cayman Water”). 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 (“WAC”), a government-owned utility and regulatory agency, are Grand Cayman’s only water utilities.

Aquilex, Inc. (“Aquilex”). Aquilex, a U.S. company located in Coral Springs, Florida, 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.

Bulk Segment

Consolidated Water (Bahamas) Limited (“CW-Bahamas”). We own 90.9% of CW-Bahamas, which provides bulk water under long-term contracts to the Water and Sewerage Corporation of The Bahamas (“WSC”), a government agency. CW-Bahamas owns and operates our largest desalination plant and one other desalination plant.

Ocean Conversion (Cayman) Limited (“OC-Cayman”). OC-Cayman provides bulk water under long-term contracts to the WAC, which distributes the water to properties located outside our exclusive retail license service area on Grand Cayman. OC-Cayman operates three seawater reverse osmosis desalination plants owned by the WAC.

Services Segment

PERC Water Corporation (“PERC”). In October 2019, we purchased, through our wholly-owned U.S. subsidiary, Consolidated Water U.S. Holdings, Inc. (“CW-Holdings”), 51% of the equity in PERC, a U.S. company headquartered in Fountain Valley, California. In August 2020, we purchased an additional 10% ownership interest of PERC, increasing our ownership of this subsidiary to 61%. In January 2023, we acquired the remaining 39% ownership interest in PERC. PERC designs, constructs, sells, operates and manages water, wastewater and water reuse infrastructure.

Ramey Environmental Compliance, Inc. (“REC”). Effective October 1, 2023, we purchased, through our wholly-owned subsidiary PERC, a 100% ownership interest in REC, a Colorado company headquartered in Frederick, Colorado. REC operates and maintains water and wastewater treatment facilities and provides technical services to clients throughout the Rocky Mountain and Eastern Plains Regions of Colorado.

DesalCo Limited (“DesalCo”). 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. Serving as a subcontractor to OC-Cayman, DesalCo designed and constructed the three reverse osmosis plants that OC-Cayman currently operates for (and previously sold to) the WAC and is presently constructing the new Red Gate plant for the WAC.

Kalaeloa Desalco LLC (“Kalaeloa Desalco”). In September 2021, Kalaeloa Desalco was formed to pursue a project encompassing the design, construction, operations and maintenance of a seawater reverse osmosis desalination plant in Oahu, Hawaii. In June 2023, Kalaeloa Desalco signed a definitive agreement with the Honolulu Board of Water Supply to design, build, operate and maintain a 1.7 million gallons per day seawater reverse osmosis desalination plant in Oahu, Hawaii.

Manufacturing Segment

Aerex Industries, Inc. (“Aerex”). Aerex, a U.S. company located in Fort Pierce, Florida, 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’s products include reverse osmosis desalination

6

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.

Affiliate

Ocean Conversion (BVI) Ltd. (“OC-BVI”). 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’s profits and certain profit-sharing rights that raise our effective interest in OC-BVI’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.

Discontinued Operations - Mexico Project Development

Consolidated Water Cooperatief, U.A. (“CW-Cooperatief”), N.S.C. Agua, S.A. de C.V. (“NSC”) and Aguas de Rosarito S.A.P.I. de C.V. (“AdR”). 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 “Project”).

In August 2016, the Public Private Partnership Agreement for the Project (the “APP Contract”) was executed between AdR, the Comisión Estatal del Agua de Baja California (“CEA”), the Government of Baja California as represented by the Secretary of Planning and Finance and the Public Utilities Commission of Tijuana (“CESPT”).

In June 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 expenses we incur in connection with our on-going international arbitration with the Mexico government to obtain reimbursement for the costs we incurred in connection with the Project are reported as discontinued operations in our consolidated financial statements.

Our Operations

For fiscal year 2023, our retail water, bulk water, services and manufacturing segments generated approximately 17%, 19%, 54% and 10%, 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.

Retail Water Operations

For fiscal years 2023 and 2022, our retail water operations accounted for approximately 17%, and 27%, respectively, of our consolidated revenue. This business produces and supplies potable water to end-users, including residential, commercial and government customers in the Cayman Islands.

We sell water through our retail operations under a license issued in July 1990 by the Cayman Islands government (the “1990 license”) that granted Cayman Water the exclusive right to provide potable water to customers within its licensed service area. Although the 1990 license has not been expressly extended after January 2018, we continue to supply water under the terms of the 1990 license, as discussed in the following paragraphs. 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.

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

7

most recent express extension of the license expired on January 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 of 7.5% of revenue we collect required under the 1990 license.

In October 2016, the Government of the Cayman Islands passed legislation which created a new utilities regulation and competition office (“OfReg”). 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 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 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 2017. We began license negotiations with OfReg in July 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.

See also ITEM 1A. RISK FACTORS and ITEM 7. MANAGEMENT’S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS - Material Commitments, Expenditures and Contingencies - Cayman Water Retail License.

Our retail operations in the Cayman Islands produce potable water at three seawater reverse osmosis desalination plants in Grand Cayman located at our Abel Castillo Water Works (“ACWW”) and West Bay sites. We own the land for our ACWW and West Bay plants. 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 West Bay plant is 1,000,000 gallons of water per day.

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.

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.

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.

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. The provision for credit losses has historically 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.

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 August 2022, the Cayman Islands government lifted the COVID-19 pandemic related travel restrictions that had eliminated tourist travel to the Cayman Islands since March 2020.

8

Bulk Water Operations

For fiscal years 2023 and 2022, our bulk water operations accounted for approximately 19%, and 35%, 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.

Bulk Water Operations in the Cayman Islands

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.

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 and built by DesalCo and operated by OC-Cayman: the North Sound, Red Gate and North Side Water Works (“NSWW”) 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.

Our agreement with the WAC for the North Sound and NSWW plants expire in 2026. Our agreement with the WAC for the Red Gate plant expires in 2034.

Bulk Water Operations in The Bahamas

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 supply bulk water in The Bahamas from our Windsor and Blue Hills plants.

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 2033 and requires us to deliver and requires the WSC to purchase a minimum of 16.8 million gallons per week.

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 2032 that requires us to deliver and requires the WSC to purchase a minimum of 63.0 million gallons of water each week.

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 Company (“BPL”). 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.

Services Operations

For fiscal years 2023 and 2022, our services operations accounted for approximately 54% and 31%, respectively, of our consolidated revenue.

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 technology offered by suppliers in our business and, at times, collaborates with suppliers in the development of their

9

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 the desalination plants sold by OC-Cayman to the WAC. Serving as a contractor to OC-Cayman, DesalCo is presently constructing the new Red Gate desalination plant for the WAC.

In October 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%. In January 2023, we acquired the remaining 39% ownership interest in PERC. PERC designs, constructs 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’s primary markets are California and the Southwest U.S., but it conducts business in other areas of the U.S.

Effective October 1, 2023, we purchased, through our wholly-owned subsidiary PERC, a 100% ownership interest in REC, a Colorado company headquartered in Frederick, Colorado. REC operates and maintains water and wastewater treatment facilities and provides technical services to clients throughout the Rocky Mountain and Eastern Plains Regions of Colorado.

Manufacturing Operations

For fiscal years 2023 and 2022, our manufacturing operations accounted for approximately 10% and 7%, respectively, of our consolidated revenue. Our manufacturing operations consist 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’s products include reverse osmosis desalination equipment, membrane separation equipment, filtration equipment, piping systems, vessels and custom fabricated components. Aerex’s manufacturing facility and headquarters are located in Fort Pierce, Florida and substantially all of its customers are U.S. companies.

Affiliate Operations

Our affiliate, OC-BVI, sells water to the Government of the British Virgin Islands Water and Sewerage Department (“BVIW&S”). 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’s profits from 43.53% to approximately 45%. Sage Water Holdings (BVI) Limited (“Sage”) 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.

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.

We account for our investment in OC-BVI using the equity method of accounting.

OC-BVI sells bulk water to BVIW&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.

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 2031.

OC-BVI purchases electrical power to operate this plant from the BVI Electricity Corporation and operates diesel engine-driven emergency power generators which can produce 100% of the plant’s production capacity when the BVI Electricity Corporation is unable to provide power to the plant.

10

OC-BVI’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 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 the BVI Electricity Corporation.

Reverse Osmosis Technology

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) 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, if required, treatment chemicals. 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 and (if necessary) the mineral content, and providing chlorination to prepare it for distribution.

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.

Wastewater Treatment Technology

Our approach to wastewater treatment integrates advanced technologies and processes to ensure high-quality water reuse while addressing environmental and operational concerns. Typical technology uses include that of micro and ultra filtration, reverse osmosis, and ultraviolet advanced oxidation systems, often with sodium hypochlorite or hydrogen peroxide as oxidizers, to meet the stringent water quality parameters set by California. This is particularly relevant for applications like Title 22 reuse and Indirect Potable Reuse, where safety and quality are paramount.

We utilize Membrane Bioreactor (“MBR”) technology, which is a wastewater treatment process that has been used for several decades to produce high quality recycled water for non-potable reuse.  MBR technology, which integrates micro or ultra-filtration membranes with biological wastewater treatment processes, offers several advantages. These include a reduced physical footprint, which is crucial in areas where space is at a premium, and the production of higher quality treated effluent, which is vital for ensuring the safety and reliability of water reuse. Additionally, MBR's capability to handle more challenging influent makes it a versatile solution for a variety of wastewater treatment needs.

We employ various methods to improve the aesthetic and environmental integration of our clients’ facilities. We conceal equipment and housing technologies in buildings that are both aesthetically pleasing and odor friendly, thereby addressing two of the common challenges in wastewater treatment facilities: odor and visual impact. This not only enhances the quality of life for nearby residents but also demonstrates a commitment to environmental stewardship.

Furthermore, the vertical integration of technology within our operations constitutes a strategic approach to improving efficiency in construction and operational phases. We believe this integration leads to cost savings, faster project completion times, reduction of raw material usage, and smoother operational processes.

Overall, our strategies and technologies reflect a holistic approach to wastewater treatment, emphasizing efficiency, environmental sensitivity, and the production of high-quality treated water for various reuse applications.

11

Raw Materials and Sources of Supply

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.

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 operate.

Seasonal Variations in Our Business

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’ 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. The COVID-19 pandemic and the resulting cessation of tourism to the Cayman Islands significantly reduced demand for our water in 2021. In August 2022, the Cayman Islands government lifted the COVID-19 pandemic related travel restrictions that had eliminated tourist travel to the Cayman Islands since March 2020. Demand in The Bahamas was not affected to the same degree by the drop in tourism resulting from the COVID-19 pandemic.

The business conducted by Aerex and PERC is generally not subject to seasonal variations.

Government Regulations, Custom Duties and Taxes

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.

Cayman Islands

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.

The Bahamas

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’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.

12

Markets and Service Areas

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) 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) any location with a need for the water treatment and water reuse infrastructure development and management services we provide; and (iii) those new customers that require specialized water production and treatment products and systems such as those we manufacture.

Cayman Islands. 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.

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 2022 to be 81,546 after the 2021 census count. According to the figures published by the Department of Tourism Statistics Information Center, in 2023 as compared to 2022, tourist air arrivals increased over 50% to approximately 429,000 and tourist cruise ship arrivals increased 70% to approximately 1,270,000.

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 Bahamas. 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’s population. A 2022 census placed the population of New Providence at approximately 297,000. According to statistics published by the Bahamas Ministry of Tourism, in 2023 as compared to 2022, the number of air arrivals increased 17% to approximately 1,327,000 and cruise ship arrivals increased 46% to approximately 3,114,000.

British Virgin Islands. 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.

Competition

Cayman Islands. 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 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 the license as operative notwithstanding the expiration of the express extension. Negotiations for a new license are on-going.

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.

The Bahamas. We have competed with companies such as SUEZ/Veolia, 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.

13

British Virgin Islands. 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, TSG and other parties for any future business opportunities that may arise in the British Virgin Islands.

United States. 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.

PERC and REC compete 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 and REC.

Environmental and Health Regulatory Matters

Cayman Islands. 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.

Our Cayman Islands retail water license and bulk water operating contracts require our potable water to meet the World Health Organization’s Guidelines for Drinking-Water Quality and contain less than 200 mg/l of total dissolved solids.

The Bahamas and British Virgin Islands. With respect to our Bahamian operations and OC-BVI’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.

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.

United States. Consistent with other U.S. companies, Aerex, PERC, Kalaeloa Desalco and REC 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.

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.

Human Capital

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.

As of March 20, 2024, we employed a total of 293 persons, 63 in the Cayman Islands, 209 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 20 management employees and 52 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 very good.

14

Available Information

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.

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, Environmental and Social Governance Committee and the Corporate Governance Guidelines of our Board of Directors are available at the Investors section of our website.

You may access, free of charge, our annual reports on Form 10-K, quarterly reports on Form 10-Q, and current reports on Form 8-K, plus amendments to such reports as filed or furnished pursuant to Section 13(a) or 15(d) of the Securities Exchange Act of 1934, as amended, on our website and on the website of the Securities and Exchange Commission (the “SEC”) 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. Box 1114, Grand Cayman, KY1-1102, Cayman Islands, Attention: Investor Relations; or by calling us at (345) 945-4277.

ITEM 1A.

RISK FACTORS

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.

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.

We sell water through our retail operations under a license issued in July 1990 by the Cayman Islands government (the “1990 license”) that granted Cayman Water the exclusive right to provide potable water to customers within its licensed service area. Although the 1990 license has not been expressly extended after January 2018, we continue to supply water under the terms of the 1990 license, as discussed in the following paragraphs. 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 2023 and 2022, we generated approximately 17% and 27%, respectively, of our consolidated revenue and 26% and 44%, respectively, of our consolidated gross profit from the retail water operations conducted under the 1990 license.

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 license expired on January 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 a royalty of 7.5% of the revenue we collect as required under the 1990 license.

In October 2016, the Government of the Cayman Islands passed legislation which created a new utilities regulation and competition office (“OfReg”). 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 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 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

15

in May 2017. We began license negotiations with OfReg in July 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.

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.

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 financial results could be materially adversely affected.

CW-Bahamas’ accounts receivable balances (which include accrued interest) due from the WSC amounted to $26.9 million as of December 31, 2023. Approximately 80% of this December 31, 2023 accounts receivable balance was delinquent as of that date. The delay in collecting these accounts receivable has adversely impacted the liquidity of this subsidiary.

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’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, we have not provided for a material allowance for credit losses for CW-Bahamas’ accounts receivable from the WSC as of December 31, 2023.

In a report dated October 6, 2022, Moody’s Investor Services (“Moody’s”) downgraded the Government of The Bahamas’ long-term issuer and senior unsecured ratings to B1 from Ba3. Moody’s also lowered The Bahamas’ local currency ceiling to Baa3 from Baa2 and its foreign currency ceiling to Ba1 from Baa3. Moody’s iterated these ratings in April and October 2023, noting that such ratings are “stable.”

If CW-Bahamas is unable to collect a significant portion of its delinquent accounts receivable, one or more of the following events may occur: (i) CW-Bahamas may not have sufficient liquidity to meet its obligations; (ii) we may be required to cease the recognition of revenue on CW-Bahamas’ water supply agreements with the WSC; and (iii) we may be required to provide a material allowance for credit losses for CW-Bahamas’ accounts receivable. Any of these events could have a material adverse impact on our consolidated financial condition, results of operations, and cash flows.

The profitability of our contracts is dependent upon our ability to accurately estimate construction and operating costs.

The cost estimates we prepare in connection with the construction and operation of our water plants, the water infrastructure we construct and sell to third parties, and our manufacturing contracts, 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, manufacturing and operating costs, the profitability of our plants and our manufacturing and operations and maintenance 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 contract, which could cause the gross profit for a contract to be less than we anticipated when the bid was made. The profit margins we initially expect to generate from an operations and maintenance contract could be further reduced if future operating costs for that contract exceed our estimates of such costs. Any construction, manufacturing, and operating costs for our contracts that significantly exceed our initial estimates could have a material adverse impact our consolidated financial condition, results of operations, and cash flows.

16

Certain of PERC’s contracts with its customers may be terminated at any time at the customer’s convenience or with relatively short advance notice. The termination of any of these contracts prior to their full performance may result in us realizing less than the full consideration payable under the contract and may negatively impact our financial results.

Certain of PERC’s contracts with its customers, and substantially all of its contracts with governments or municipalities, may be terminated at any time at the customer’s convenience with no or relatively short advance notice. Our business is highly dependent on the purchase of our products and services by government and municipalities, and we believe that contracts with similar termination provisions will continue to be a source of a substantial portion of our revenue for the foreseeable future.

If a customer terminates one of our contracts for convenience, we generally may recover, at most, our incurred or committed costs, settlement expenses, and payment for work completed or products delivered prior to the termination. As such, the termination of any of these contracts prior to their stated term may result in us realizing less than the full consideration payable under the contract. If any such contract is terminated prior to us performing a substantial portion of the work to be performed or delivering a substantial portion of the products to be delivered, prior to the termination, such termination may have a material adverse impact on our consolidated results of operations.

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.

One bulk water customer, the WSC, accounted for approximately 17% of our consolidated revenue for 2023. 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.

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.

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’ 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. During the COVID-19 pandemic, the resulting cessation of tourism to the Cayman Islands through August 2022 significantly reduced demand for our water.

Performance shortfalls under any of our bulk supply contracts could result in penalties or cancellation of the contract.

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.

Our operations could be harmed by natural disasters such as hurricanes or earthquakes.

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 three of our eight 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’ 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,

17

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.

Contamination of our water may cause disruption in our services and adversely affect our revenue.

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 a material adverse impact on our consolidated financial condition, results of operations, and cash flows.

Potential government decisions, actions and regulations could negatively affect our operations.

We are subject to the local regulations of the countries in which we operate, 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:

restricting foreign ownership (by us);
providing for the expropriation of our assets by the government;
providing for nationalization of public utilities by the government;
providing for different water quality standards;
unilaterally changing or renegotiating our license and agreements;
restricting the transfer of U.S. currency; or
causing currency exchange fluctuations/devaluations or enacting changes in tax laws.

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.

Unforeseen environmental costs could adversely affect our business and results of operations.

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 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.

18

If we fail to abide by laws, rules and regulations relating to human and workers’ rights, we could be subject to various actions and our reputation, business and financial results could be adversely affected.

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’ 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’ 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’ 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.

We rely on the efforts of key employees. Our failure to retain these employees could adversely affect our results of operations.

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. McTaggart has an employment agreement expiring on December 31, 2026. Each year, the term of this agreement may be extended for an additional year. However, we cannot guarantee that Mr. McTaggart will continue to work for us during the term of his agreement or will extend his employment agreement with us.

Our business could be adversely affected by cyber threats or other interruptions in information technology, communications networks and operations.

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.

We are exposed to credit risk through our relationships with several customers.

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

19

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.

We are exposed to the risk of variations in currency exchange rates.

Although we report our results in United States dollars, a significant portion 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.

We may not pay dividends in the future. If dividends are paid, they may be in lesser amounts than past dividends.

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.

Service of process and enforcement of legal proceedings commenced against us in the United States may be difficult to obtain.

We are incorporated under the laws of the Cayman Islands and most of our assets are located outside of the United States. In addition, six of our 14 Directors and 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.

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 Directors and Officers would have to initiate a new proceeding in the Cayman Islands using the United States judgment as evidence of the party’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.

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.

The relatively low trading volume of our stock may adversely impact the ability to sell our shares.

The average daily trading volume of our common stock in 2023 was approximately 131,600 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

20

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.

ITEM 1B.

UNRESOLVED STAFF COMMENTS

None.

ITEM 1C. CYBERSECURITY

Cybersecurity Risk Management and Strategy

Our information technology (“IT”) and cybersecurity programs are crucial to maintaining secure operations, which enable us to deliver on our promise to customers and maintain stakeholder trust. Our Vice President of Information Technology (“VP IT”) is responsible for establishing, implementing, and executing our cybersecurity program and strategy. Our VP IT has more than 25 years of IT, IT audit, and cybersecurity experience, and is involved in assessing the latest developments in cybersecurity, including potential threats and innovative risk management techniques. All IT staff are obliged to include cybersecurity as part of their everyday considerations and tasks.

Our cybersecurity program is a critical component of our enterprise risk management process overseen by our Board of Directors, and we have integrated cybersecurity-related risks into our overall enterprise risk management framework. Additionally, cybersecurity-related risks are included in the risk universe that the risk management function evaluates to assess top risks to the enterprise on an annual basis.

Our IT department proactively identifies, manages, and mitigates cyber risk in a variety of ways, including but not limited to:

a.

A formal enterprise-wide cybersecurity policy and related standards;

b.

Cybersecurity training and employee phishing simulations;

c.

Ongoing vulnerability assessment, identification, and remediation;

d.

Cyber incident response, IT disaster recovery, and business continuity plans;

e.

Identity and access management controls;

f.

Automated patch management and security updates;

g.

Network isolation of key operations environments; and

h.

Email filtering with attachment inspection and targeted threat protection.

The standards set in our cybersecurity program include the implementation of controls that are aligned with industry guidelines and applicable regulations to identify threats, deter attacks, and protect our information security assets. These standards are guided, in part, by the relevant National Institute of Standards and Technology (NIST) and American Water Works Association (AWWA) frameworks and guidance. We use various tools, security measures and technologies to aid in seeking to protect our network perimeter and internal systems from unauthorized access, intrusion, or disruption. Assessments are conducted across our systems, networks, and data infrastructure to identify potential cybersecurity threats and vulnerabilities.

We have policies and procedures in place for selecting and managing our relationships with third-party service providers and other business partners, including monitoring compliance with our agreements and regulatory and legal requirements. We also actively engage with industry participants and related communities as part of our continuing efforts to evaluate and enhance the effectiveness of our information security policies and procedures. In addition, a monitoring and detection system has been implemented to help identify cybersecurity threats and incidents. Our cybersecurity program also focuses on providing training and awareness to our employees and contractors on cybersecurity best practices.

21

Cybersecurity Governance

Our Board of Directors considers cybersecurity risk as part of its risk oversight function and has delegated to the Audit Committee oversight of cybersecurity and other IT risks. The Audit Committee oversees management’s implementation of our cybersecurity risk management program.

The Audit Committee oversees the management of our cybersecurity risk exposures and the steps management has taken to monitor and control such exposures. At each quarterly meeting, the Audit Committee receives an update from our VP IT and other members of management on relevant topics, including cybersecurity program maturity progress, new capabilities implemented, testing results, key cyber risk metrics (e.g., simulated phishing testing and vulnerability management) and notable incidents or events should they occur. On an annual basis, our Board of Directors meets with our VP IT and our third-party cybersecurity consultant to review our cybersecurity strategy. In accordance with our cybersecurity incident response plan, our Board of Directors is promptly informed of potentially material cybersecurity incidents, including with respect to our third-party service providers.

Although we have experienced cybersecurity incidents from time to time that have not had a material adverse effect on our business, financial condition, or results of operations, there can be no assurance that a cyber-attack, security breach, or other cybersecurity incident will not have a material adverse effect on us in the future.

Our management team supervises efforts to prevent, detect, mitigate, and remediate cybersecurity risks and incidents through various means, which may include briefings from internal security personnel; threat intelligence and other information obtained from governmental, public or private sources, including external consultants engaged by us; and alerts and reports produced by security tools deployed in the IT environment.

For a discussion regarding risks from cybersecurity threats that have or are reasonably likely to affect the company, see the risk factor titled “Our business could be adversely affected by cyber threats or other interruptions to information technology, communications networks and operations.” in Item 1A of this Annual Report on Form 10-K.

ITEM 2.

PROPERTIES

Cayman Islands Properties

Abel Castillo Water Works

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.

West Bay Plant

In 2023, we commissioned a new seawater reverse osmosis desalination plant in the West Bay area and decommissioned the previous plant located on the same property. The new plant began operating in November 2023, with a capacity of 1,000,000 gallons per day and is expandable to 2,000,000 gallons per day. This site contains a 5,000 square foot concrete building which houses our water production facility, 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.

Britannia Plant

Although we own our Britannia seawater reverse osmosis desalination plant which is located in the Seven Mile Beach area, this plant is not currently operational. However, we still have and operate a potable water storage tank with a capacity

22

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.

Distribution System

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.

Corporate Office

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 2024. We expect to renew this lease.

Other Property

In October 2022, Cayman Water purchased for $2.94 million approximately 2.8 acres of land in the West Bay area of Grand Cayman. Cayman Water expects to use this site for the construction of a new headquarters, emergency operations center and warehouse facility at some point in the future.

Bahamas Properties

Windsor Plant

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 are 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. We also own and maintain a 5.0 million gallon welded steel water storage tank that was constructed by us and is operated by the WSC.

Blue Hills Plant

Our Blue Hills plant in Nassau, New Providence consists of two production facilities. The first facility was completed in July 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 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.

The Blue Hills plant water supply agreement was amended in January 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 2012 and 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 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. We also own and maintain a 1.0 million gallon welded steel elevated water storage tank that was constructed by us and is operated by the WSC.

U.S. Properties

Aerex owns a 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, 2026.

23

Our Aquilex warehouse consists of 4,100 square feet located in Sunrise, Florida that has been leased through September 2025. Our Aquilex office consists of 6,500 square feet located in Coral Springs, Florida that has been leased through March 2026.

PERC leases approximately 4,100 square feet of office space in Fountain Valley, California that serves as its corporate headquarters. This lease expired in August 2021 and is currently on a month-to-month basis.

REC leases approximately 7,500 square feet of office space in Frederick, Colorado that serves as its corporate headquarters under a lease that expires on October 1, 2029.

Mexico Properties

NSC and AdR own 20.1 hectares and 0.18 hectares of land, respectively, in Rosarito Beach, Baja California, Mexico.

ITEM 3.

LEGAL PROCEEDINGS

Mexico Project litigation

 

a)EWG request of precautionary measures

In January 2018, EWG Water LLC (“EWG”) initiated an ordinary mercantile claim against, among others, N.S.C. Agua, S.A. de C.V. (“NSC”) and Consolidated Water Cooperatief, U.A. (“CW-Cooperatief”) (with Aguas de Rosarito S.A.P.I. de C.V. (“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 “Tenth Civil Judge”).

In such claim, EWG challenged, among other things, the transactions contemplated under a certain option agreement (entered into in 2012), and therefore, the capital investment transactions occurring in May 2013 that increased the ownership interest of CW-Cooperatief in NSC to 99.99%. 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. Within the above-mentioned claim, the Tenth Civil Judge granted EWG certain preliminary measures against NSC, which were later overturned by an Upper Court.

In July 2023, EWG filed a motion before a local court in Playas de Rosarito, Baja California (the “Rosarito Court”) to obtain precautionary measures consisting of the securing of assets owned by NSC (particularly real estate), as a procedure prior to the commencement of an arbitration that allegedly would be initiated by EWG against NSC to claim the payment of an indemnification for damages derived from a so-called simulation of legal acts. In the opinion of the Rosarito Court, such motion did not require notification to NSC or the presentation of counterarguments by NSC to the motion prior to securing the assets of NSC.

On July 28, 2023, the Rosarito Court issued a resolution in which it: (i) granted the precautionary measures requested by EWG, subject to the posting of a bond in the amount of MXN$1,500,000 (One Million Five Hundred Thousand Mexican Pesos), and (ii) ordered that once the precautionary measures were executed, EWG would have three business days counted as from the posting of the bond, to initiate and prove to the Rosarito Court that it initiated the arbitration. To the Company’s knowledge EWG has not posted the bond. Consequently, NSC has not been summoned to an arbitration procedure.

As EWG has apparently not posted the bond set by the Rosarito Court (i) the precautionary measures have not been enforced, (ii) no securing or attachment has been registered against the real estate of NSC; and (iii) NSC has not been formally summoned to this procedure. As stated previously, NSC is unaware of any arbitration commenced by EWG regarding this matter.

 

24

b)NSC amparo lawsuit

On August 16, 2023, NSC filed an amparo suit (i.e. application for constitutional relief) before the Eleventh Federal District Court in Tijuana (“Federal District Court in Tijuana”) against the precautionary measures granted to EWG by the Rosarito Court.

 

In its amparo suit, NSC also requested the Federal District Court in Tijuana to grant an order to put on hold said precautionary measures. A preliminary order to stay was granted by the Federal District Court in Tijuana, followed by a definitive injunction, subject to the posting of a guarantee. NSC has submitted the guarantee to the court.

 

NSC subsequently filed an extension of the amparo suit introducing new arguments aiming to strengthen NSC´s position. The amparo extension was admitted through a resolution published on November 7, 2023.

The Federal District Court in Tijuana has not been able to summon EWG on this amparo suit, as it has not been able to determine nor obtain information on an address where EWG can be summoned. As such, the Federal District Court in Tijuana has requested various authorities to provide information on any domicile where EWG can be summoned.

The responses of some authorities are in process of being received by the Federal District Court in Tijuana. NSC is waiting until all the authorities provide their official response to determine if there is a viable alternative for summoning EWG.

NSC offered certain evidence consisting of the docket of amparo file number 74/2020, which was processed by the Twelfth Civil District Court in Tijuana. The Amparo Law provides that any documentary evidence offered by the parties shall be issued without any cost. Therefore, NSC requested the Court to grant the expedition of said copies for free.

However, this request was denied by the Federal District Court in Tijuana. Therefore, NSC filed an appeal for review against said decision, which was admitted by the Federal District Court in Tijuana and sent to the Second Collegiate Circuit Court in Tijuana, acting as Court of Appeals, which confirmed the admission of the appeal remedy through a resolution published on January 26, 2024. The judgment is still pending resolution.

We cannot presently determine what impact the resolution of this matter may have on our consolidated financial statements.

ITEM 4.

MINE SAFETY DISCLOSURES

Not applicable.

PART II

ITEM 5.

MARKET FOR REGISTRANT’S COMMON EQUITY, RELATED STOCKHOLDER MATTERS AND ISSUER PURCHASES OF EQUITY SECURITIES

Market Information

Our Class A common stock is listed on the NASDAQ Global Select Market and trades under the symbol “CWCO”.

No trading market exists for our redeemable preferred stock, which is only issued to, or purchased by, long-term employees of our company.

On January 3, 2023, March 31, 2023 and January 2, 2024, we issued a total of 25,986 shares, 13,797 shares and 29,392 shares of our common stock, respectively, to Executive Officers under our 2008 Equity Incentive Plan. On December 12, 2023, we issued a total of 22,831 shares of our common stock to our Directors under our Non-Executive Directors’ Share Plan in consideration for their service on our Board of Directors and the committees thereof. See “ITEM 11. EXECUTIVE COMPENSATION”.

25

Currently 2,023,850 Bahamian Depository Receipts (“BDRs”) 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’ relative value to our common stock.

Holders

As of March 20, 2024, we had 706 holders of record of our common stock.

Dividends

Our Board of Directors declares and approves any and all dividends.

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.

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.

    

2023

    

2022

First Quarter

$

0.085

$

0.085

Second Quarter

 

0.085

 

0.085

Third Quarter

 

0.095

 

0.085

Fourth Quarter

 

0.095

 

0.085

$

0.36

$

0.34

Exchange Controls and Other Limitations Affecting Security Holders

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.

The information required by Item 201(d) 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.

ITEM 6.

[RESERVED]

26

ITEM 7.

MANAGEMENT’S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS

Overview

Our water production operations and activities, and those of our affiliate OC-BVI, are conducted at 10 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 31 of each year.

Comparative Operations

2023

2022

Location

    

Plants

    

Capacity (1)

    

Location

    

Plants

    

Capacity (1)

Cayman Islands

 

6

9.3

    

Cayman Islands

    

7

9.9

Bahamas

 

2

14.8

Bahamas

2

14.8

British Virgin Islands

 

2

0.8

British Virgin Islands

2

0.8

 

10

24.9

11

25.5

(1)In millions of gallons per day.

Effective October 1, 2023, the Company purchased, through its wholly-owned subsidiary PERC, a 100% ownership interest in Ramey Environmental Compliance, Inc., a Colorado company that operates and maintains water and wastewater treatment facilities and provides technical services to clients throughout the Rocky Mountain and Eastern Plains Regions of Colorado. PERC acquired REC in November 2023 for approximately $4.1 million and recorded goodwill and intangible assets of $2,436,391 and $1,108,390, respectively, as of October 1, 2023 as a result of this acquisition.

The following table sets forth the comparative combined estimated production capacity of our services segment as of December 31 of each year.

Comparative Operations

2023

2022

Location

    

Plants

    

Capacity (1)

    

Location

    

Plants

    

Capacity (1)

United States

 

31

59.7

    

United States

    

27

52.5

(1)In estimated millions of gallons per day.

As of December 31, 2023, REC performed operations, maintenance, and monitoring services for 72 wastewater and water treatment plants located in the Rocky Mountain and Eastern Plains Regions of Colorado.

Cayman Islands

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 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 three company-owned seawater reverse osmosis desalination plants which provide water to approximately 8,095 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.

Our exclusive license from the Cayman Islands government 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 license expired on January 31, 2018. We

27

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’S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS – Material Commitments, Expenditures and Contingencies – Cayman Water Retail License.

The Bahamas

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 (“WSC”) under long-term supply agreements. During 2023, we supplied approximately 4.8 billion gallons of water to the WSC from these plants, as compared to 4.6 billion gallons during 2022.

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, all amounts due from CW-Bahamas were eventually paid in full, and we believe that the present accounts receivable from the WSC are fully collectible. Such accounts receivable balances due from The Bahamas government amounted to $26.9 million as of December 31, 2023. See further discussion of this matter at ITEM 7. MANAGEMENT’S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS - LIQUIDITY AND CAPITAL RESOURCES - CW-Bahamas Liquidity.

Critical Accounting Policies and Estimates

Our critical accounting policies relate to (i) the valuations of our goodwill, intangible assets and long-lived assets; and (ii) revenue recognition on our construction and manufacturing contracts.

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.

The application of our critical accounting policies involves estimates or assumptions that constitute “critical accounting estimates” for us because:

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
the impact of the estimates and assumptions on financial condition and results of operations is material.

Goodwill and Intangible Assets

Goodwill represents the excess cost of an acquired business over the fair value of the assets and liabilities of the acquired business as of the date of acquisition. Goodwill and intangible assets recorded as a result of a business combination 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

28

identifies our reporting units for goodwill impairment testing purposes, which consist of Cayman Water, the bulk segment (which is comprised of CW-Bahamas and OC-Cayman), PERC, and the manufacturing segment (i.e., Aerex), 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 a reporting unit exceeds the fair value of the reporting unit, an impairment loss is recorded.

For 2023, we elected to assess qualitative factors to determine whether it was necessary to perform the quantitative goodwill impairment testing we have conducted in prior years for our reporting units. We assessed the relevant events and circumstances to evaluate whether it is more likely than not that the fair values of such reporting units are less than their carrying values. The events and circumstances assessed for each reporting unit included macroeconomic conditions, industry and market conditions, cost factors, overall financial performance, and other relevant events. Based upon this qualitative assessment, we determined that it is more likely than not that the fair values of our reporting units exceeded their carrying values as of December 31, 2023.

For 2022, we elected to assess qualitative factors to determine whether it was necessary to perform the quantitative goodwill impairment testing we have conducted in prior years for all reporting units other than the manufacturing unit. We assessed the relevant events and circumstances to evaluate whether it is more likely than not that the fair values of such reporting units are less than their carrying values. The events and circumstances assessed for each unit included macroeconomic conditions, industry and market conditions, cost factors, expected future results, overall financial performance, and other relevant events. Based upon this qualitative assessment we determined that it is more likely than not that the fair values of our Cayman Water and bulk segment reporting units exceeded their carrying values as of December 31, 2022. Based upon our negotiated, arms-length purchase of the remaining 39% equity interest in PERC from its minority shareholders for $7.8 million in January 2023, the fair value of our PERC reporting unit exceeded its carrying value by 79% as of December 31, 2022.

Due to the factors discussed in the following paragraphs, we elected to test the goodwill associated with our manufacturing reporting unit for possible impairment for 2022 using the quantitative tests applied in prior years.

Approximately 80% of Aerex’s revenue, and 89% of Aerex’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’s revenue from this customer had 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’s future cash flows. Such projections assumed, in part, that Aerex’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’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.

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. 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 we prepared for purposes of testing our manufacturing reporting unit’s goodwill for possible impairment as of December 31, 2020. Furthermore, Aerex’s efforts to replace the revenue previously generated from this customer with revenue from existing and new customers were adversely impacted by negative economic conditions (caused in part by the COVID-19 pandemic). These negative economic conditions also increased Aerex’s raw material costs, resulted in raw material shortages and extended delivery times for such materials, and adversely affected the overall financial condition of Aerex’s current and prospective customers. Accordingly, in light of this new information from Aerex’s former major customer, and the on-going weak economic conditions that we believed would continue through 2022, we updated our projections

29

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 segment’s goodwill by this amount for the three months ended June 30, 2021.

For 2022, we estimated the fair value of our manufacturing reporting unit 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 the analysis. We also estimated the fair value of our manufacturing reporting unit for the year ended December 31, 2022 by applying the guideline public company method. We weighted the fair values estimated for our manufacturing reporting unit under each method and summed such weighted fair values to estimate the overall fair value for the reporting unit. The respective weightings we applied to each method for the year ended December 31, 2022 were 80% to the discounted cash flow method and 20% to the guideline public company method.

The fair value we estimated for our manufacturing reporting unit exceeded its carrying amount by 63% as of December 31, 2022.

Long-lived Assets

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.

On June 29, 2020, our Mexico subsidiary, AdR, received a letter from the State of Baja California (the “State”) terminating AdR’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’s proposed aqueduct of approximately ($3.0 million) in 2020.

Construction and Manufacturing Contract Revenue Recognition

We design, construct, and sell desalination infrastructure through DesalCo, which serves customers in the Cayman Islands, The Bahamas, and the British Virgin Islands. We design, construct, and sell wastewater and water reuse infrastructure in the U.S. through PERC. Aerex, is a custom and specialty manufacturer in the U.S. of water treatment-related systems and products applicable to commercial, municipal and industrial water production.

We recognize revenue for our construction and our specialized/custom manufacturing contracts over time under the input method using costs incurred (which represents work performed) to date relative to the total estimated costs at completion to measure progress toward satisfying a contract’s performance obligations, as such measure best reflects the transfer of control of the promised good to the customer. Contract costs include labor, materials, subcontractor costs and other expenses. We follow this method since we can make reasonably dependable estimates of the revenue and costs applicable to the various stages of a contract. Under this input method, we record revenue and recognize profit or loss as work on the contract progresses. We estimate total costs to be incurred and profit to be earned on each long-term, fixed price contract prior to commencement of work on the contract and update 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 percentage of total estimated revenue that incurred costs to date comprise of estimated total contract costs. Due to the extended time it may take to complete many of our contracts and the scope and nature of the work required to be performed on those contracts, the estimations of total revenue and costs at completion are complicated and subject to many variables and, accordingly, are

30

subject to changes. When adjustments in estimated total contract revenue or estimated total contract costs are required, any changes from prior estimates are recognized in the current period for the inception-to-date effect of such changes. We recognize the full amount of any estimated loss on a contract at the time the estimates indicate such a loss.

The cost estimates we prepare in connection with our construction and manufacturing contracts are subject to inherent uncertainties. Because we base our contract prices on our estimation of future construction and manufacturing costs, the profitability of our construction and manufacturing contracts is highly dependent on our ability to estimate these costs accurately, as almost all of our construction and manufacturing contracts are fixed-price contracts. The cost of materials, labor and subcontractors could increase significantly after we sign a construction or manufacturing contract, which could cause the gross profit for a contract to decline from our previous estimates, adversely affecting our recognition of revenue and gross profit for the contract. Construction or manufacturing contract costs that significantly exceed our initial estimates could have a material adverse impact on our consolidated financial condition, results of operations, and cash flows.

Results of Operations

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 II, ITEM 8. FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA, of this Annual Report.

Year Ended December 31, 2023 Compared to Year Ended December 31, 2022

Discontinued Operations – Mexico Project Development

In 2010, we began the pursuit, through our Netherlands subsidiary, Consolidated Water Cooperatief, U.A. (“CW-Cooperatief”), and our Mexico subsidiary, N.S.C. Agua, S.A. de C.V. (“NSC”), of a project (the “Project”) that encompassed the construction, operation and minority ownership of a 100 million gallons 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.

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’s plant was to be constructed.

Following an assessment by the State of Baja, California (the “State”) 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 “Consortium”) comprised of NSC, Suez Medio Ambiente México, S.A. de C.V. (“Suez MA”), a subsidiary of SUEZ International, S.A.S., and NuWater S.A.P.I. de C.V. (“NuWater”) 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.

In August 2016, NSC and NuWater incorporated a new company under the name Aguas de Rosarito S.A.P.I. de C.V. (“AdR”) 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.

On August 22, 2016, the Public Private Partnership Agreement for the Project (the “APP Contract”) was executed between AdR, the State Water Commission of Baja California (“CEA”), the Government of Baja California as represented by the Secretary of Planning and Finance and the Public Utilities Commission of Tijuana (“CESPT”). 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

31

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.

On June 29, 2020, AdR received a letter (the “Letter”) 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 comprised the “Project Works” (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 required that 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 amparo 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 20 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 20-day 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 formal response from CEA or CESPT to its submission of non-recoverable expenses.

We believe CW-Cooperatief, as a Netherlands company, has certain rights relating to its investments in NSC and AdR under the Agreement on Promotion, Encouragement and Reciprocal Protection of Investments between the Kingdom of the Netherlands and the United Mexican States entered into force as of October 1, 1999 (the “Treaty”). On April 16, 2021, CW-Cooperatief submitted a letter to the President of Mexico and other Mexican federal government officials alleging that the State’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 invited Mexico to seek a resolution of this investment dispute through consultation and negotiation, but stated that if the dispute could not be resolved in this manner, CW-Cooperatief would 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’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.

​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.

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 its 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 have incurred and will continue to incur legal and other arbitration-related expenses that are material to our consolidated results of operations and cash flows.

During July 2022, the State initiated discussions with us to potentially resolve the issues related to the cancellation by the government of the Rosarito desalination plant contract as well as potentially addressing the State’s acute water shortage issues. We cannot presently determine the outcome of the discussions and we have not terminated our efforts to obtain relief through the international arbitration process as a result of these discussions.

We cannot provide any assurances that we will be able to obtain reimbursement for any expenses or investments made with respect to the Project.

32

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 the costs for our legal and administrative activities to pursue reimbursement from the State of Baja California following the cancellation of the APP Contract, are classified as discontinued operations in the accompanying consolidated financial statements. Our net losses from discontinued operations for 2023 and 2022 were ($1,086,744) and ($2,371,049), respectively.

Consolidated Results

Including discontinued operations, net income attributable to Consolidated Water Co. Ltd. stockholders for 2023 was $29,585,391 ($1.86 per share on a fully diluted basis), as compared to $5,856,294 ($0.38 per share on a fully diluted basis) for 2022.

The following discussion and analysis of our consolidated results of operations and results of operations by segment for the year ended December 31, 2023 as compared to the year ended December 31, 2022 relates only to our continuing operations.

Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders for 2023 was $30,672,135 ($1.93 per share on a fully diluted basis), as compared to $8,227,343 ($0.54 per share on a fully diluted basis) for 2022.

Revenue for 2023 increased to $180,211,233 from $94,104,972 in 2022, as all four segments experienced revenue increases. Gross profit for 2023 was $61,927,105 (34% of total revenue) as compared to $30,355,123 (32% of total revenue) for 2022. For further discussion of revenue and gross profit see the “Results by Segment” discussion and analysis that follows.

General and administrative expenses (“G&A expenses”) on a consolidated basis increased to $24,752,366 for 2023 as compared to $21,070,234 for 2022. The most significant increase in G&A expenses for 2023 relates to employee costs, which increased by $2,480,517 from 2022 to 2023 due to increased stock compensation, higher bonus accruals, pay raises and new hires. Professional fees also increased by $251,813 from 2022 to 2023. The remainder of the G&A increase is attributable to increases across a variety of categories including provision for credit losses of $408,489.

Other income, net, increased to $828,313 in 2023, as compared to $464,810 in 2022 due to an increase in interest income of approximately $249,000 primarily due to a higher balance of interest earning assets, and an increase of approximately $68,000 in the equity in earnings of and profit-sharing income from our affiliate, OC-BVI, and an unrealized loss recorded in 2022 of $128,000 for the valuation of the put/call options associated with the initial acquisition of a controlling interest in PERC. We exercised our call option in the fourth quarter of 2022 and acquired the remaining 39% of PERC in January 2023.

Results by Segment

Retail Segment:

The retail segment incurred a loss from operations of ($660,253) for 2023 as compared to a loss from operations of ($1,187,013) for 2022.

Revenue generated by our retail water operations increased to $30,158,051 in 2023 from $25,954,013 in 2022 principally due to a 15% increase in the volume of water sold. The volume of water sold in the Cayman Water license area increased by 14% and the remaining 1% increase in the volume of water sold was due to water sales made by Cayman Water directly to the WAC in the first quarter of 2023. The sales volume increase reflects increased tourist activity on Grand Cayman, as tourism on the island in 2022 was lower than historical levels due to the lingering impact of the COVID-19 pandemic. Retail revenue also increased by approximately $1,014,639 due to higher energy costs which increased the energy pass-through component of our retail water rates.  

33

Retail segment gross profit increased to $16,266,822 (54% of retail revenue) for 2023 as compared to $13,405,250 (52% of retail revenue) for 2022 due to the revenue increase.

Consistent with prior periods, we record all non-direct G&A expenses in our retail segment and do not allocate any of these non-direct costs to our other three business segments. Retail G&A expenses increased to $16,905,010 for 2023 as compared to $14,552,866 for 2022. The most significant increase in G&A expenses for 2023 relates to employee costs, which increased by $1,760,230 due to pay raises, increased stock compensation expense and higher bonus accruals. Business development expenses increased by approximately $182,000 primarily due to the costs associated with the acquisition of REC (which was completed in November 2023).

Bulk Segment:

The bulk segment contributed $8,742,382 and $8,393,729 to our income from operations for 2023 and 2022, respectively.

Bulk segment revenue was $34,595,058 and $32,991,066 for 2023 and 2022, respectively. The increase in bulk segment revenue from 2022 to 2023 is attributable to a 6% increase in water volume and an increase in energy costs for CW-Bahamas, which increased the energy pass-through component of CW-Bahamas’ rates.

Gross profit for the bulk segment was $10,466,926 (30% of bulk revenue) and $9,958,854 (30% of bulk revenue) for 2023 and 2022, respectively. Gross profit in dollars increased in 2023 as compared to 2022 principally due to the increase in revenue.

Bulk segment G&A expenses increased to $1,737,264 for 2023 as compared to $1,570,732 for 2022 due to relatively small increases in a variety of expense categories.

Services Segment:

The services segment contributed $26,897,080 and $2,424,217 to our income from operations for 2023 and 2022, respectively.

Services segment revenue increased to $97,966,650 for 2023 compared to $28,835,428 for 2022. Construction revenue increased to $77,306,704 in 2023 from $11,616,274 in 2022 with this increase resulting from (i) PERC’s progress on its contract with Liberty Utilities for the construction of a water treatment plant in Goodyear, Arizona; and (ii) progress on our contract with the WAC for the construction of its Red Gate plant. We recognized approximately $64.0 million in revenue for the Liberty Utilities contract in 2023. This contract was certified substantially complete in January 2024 and the remaining work on the plant will be completed by June 2024. Revenue generated under operations and maintenance contracts was $19,368,365 and $14,152,158 in 2023 and 2022, respectively. The increase in operations and maintenance revenue from 2022 to 2023 is attributable to new contracts and increased revenue on existing contracts. Design and consulting revenue generated by the services segment was $1,291,581 and $3,066,996 in 2023 and 2022, respectively. The decrease in design and consulting revenue from 2022 to 2023 is attributable to the work performed in 2022 on the design contract for the Liberty Utilities plant currently under construction.

The gross profit for the services segment was $31,168,888 (32% of services revenue) in 2023 as compared to $5,861,794 (20% of services revenue) for 2022. Gross profit increased from 2022 to 2023 due to the increase in revenue.  The increase in gross profit as a percentage of revenue from 2022 to 2023 reflects improved margins on both our construction and operations and maintenance activities.

During 2023, we adjusted our prior year estimates of the total costs to be incurred for the Liberty Utilities contract and one other construction contract. These changes in accounting estimates arose as a result of actual construction costs and efficiencies that differed favorably from our previous expectations. These changes in accounting estimates resulted in an increase in the services segment’s revenue, gross profit and income from operations of $2,356,439 for 2023 under the input method we use to account for construction contracts and were a contributing factor in the increase in gross profit as a percentage of services revenue from 2022 to 2023. This adjustment increased basic and diluted earnings per share by $0.11 for the year ended December 31, 2023.

34

G&A expenses for the services segment increased to $4,271,808 for 2023 as compared to $3,461,294 for 2022 principally due to an increase of approximately $384,000 in employee costs attributable to pay raises, new hires and increased bonus accruals and the addition of approximately $366,000 in G&A expenses from REC as a result of our acquisition of this company effective October 1, 2023.

Manufacturing Segment:

The manufacturing segment contributed $2,188,418 to our income from operations for 2023 as compared to incurring an operating loss of ($358,748) for 2022.

Manufacturing segment revenue was $17,491,474 and $6,324,465 for 2023 and 2022, respectively. The growth in manufacturing revenue for 2023 reflects increased production activity due to relief in supply chain and economic conditions that had resulted in significant product delivery delays in 2022.

Manufacturing segment gross profit was $4,024,469 (23% of manufacturing revenue) and $1,129,225 (18% of manufacturing revenue) for 2023 and 2022, respectively. The increase in manufacturing gross profit in dollars reflects the increase in revenue. Gross profit as a percentage of revenue increased due to increased revenue and the resulting reduced impact of fixed factory overhead on this financial measure.

G&A expenses for the manufacturing segment increased to $1,838,284 for 2023 as compared to $1,485,342 for 2022 principally due to an increase of approximately $129,000 in employee costs attributable to pay raises, new hires and increased bonus accruals.

FINANCIAL CONDITION

The significant changes in the components of our consolidated balance sheet as of December 31, 2023 as compared to December 31, 2022 (other than the change in our cash and cash equivalents, which is discussed later in “LIQUIDITY AND CAPITAL RESOURCES”) and the reasons for these changes are discussed in the following paragraphs.

Accounts receivable increased by approximately $11.2 million primarily due to a $10.3 million increase in CW-Bahamas’ accounts receivable.

Contract assets increased by approximately $18.6 million primarily due to a $8.2 million increase for the construction of the Red Gate plant for the WAC and a $8.4 million increase for PERC which relates primarily to the Liberties Utilities contract.

Property, plant and equipment, net, increased by approximately $3.4 million primarily due to the commissioning of the West Bay seawater desalination plant at the end of the year.

Construction in progress decreased by approximately $3.2 million primarily due to the commissioning of the West Bay seawater desalination plant at the end of the year.

Goodwill and intangible assets increased due to the acquisition of REC.

Other assets increased by $1.7 million primarily due to prepaid insurance associated with Kalaeloa Desalco’s contract with the Board of Water Supply of the City and County of Honolulu, Hawaii.

Accounts payable, accrued expenses and other current liabilities increased by approximately $3.2 million primarily due to a $4.0 million increase in subcontractor costs payable for PERC’s contract with Liberty Utilities and Kalaeloa Desalco’s contract with the Board of Water Supply of the City and County of Honolulu, Hawaii.

Contract liabilities decreased by approximately $2.6 million primarily due to a $6.9 million reduction by the services segment in connection with PERC’s contract with Liberty Utilities and a decrease in Aerex’s contract liabilities of $1.6

35

million. These decreases were offset by an increase of $6.0 million with Kalaeloa Desalco’s contract with the Board of Water Supply of the City and County of Honolulu, Hawaii.

LIQUIDITY AND CAPITAL RESOURCES

Certain transfers from our Bahamas bank accounts to our bank accounts in other countries require the approval of the Central Bank of The Bahamas.

The Cayman Islands does not have a tax treaty with the United States. Consequently, should we be required (or elect) to transfer any profits generated by our U.S. operations to our parent company in the Cayman Islands, the amount of any such funds transferred would be subject to a 30% withholding tax.

Liquidity Position

Our projected liquidity requirements for 2024 include capital expenditures for our existing operations of approximately $9.5 million, which includes $2.8 million to be incurred in 2024 for our new West Bay plant. We paid approximately $1.6 million for dividends in January 2024. Our liquidity requirements may also include future quarterly dividends, if such dividends are declared by our Board.

As of December 31, 2023, we had cash and cash equivalents of $42.6 million and working capital of $88.8 million.

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.

CW-Bahamas Liquidity

CW-Bahamas’ accounts receivable balance (which include accrued interest) due from the WSC amounted to $26.9 million as of December 31, 2023. Approximately 80% of the December 31, 2023 accounts receivable balance was delinquent as of that date. The delay in collecting these accounts receivable has adversely impacted the liquidity of this subsidiary. CW-Bahamas has been unable to pay a dividend to its shareholders since August 2022 due to liquidity constraints.

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’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, we have not provided for a material allowance for credit losses for CW-Bahamas’ accounts receivable from the WSC as of December 31, 2023. As of February 29, 2024, this receivable amounted to $24.6 million.

CW-Bahamas held discussions with the WSC in March 2024 during which the WSC stated that the Government intends to substantially reduce CW-Bahamas’ accounts receivable from the WSC over the course of 2024.

In a report dated October 6, 2022, Moody’s Investor Services (“Moody’s”) downgraded the Government of The Bahamas’ long-term issuer and senior unsecured ratings to B1 from Ba3. Moody’s also lowered The Bahamas’ local currency ceiling to Baa3 from Baa2 and its foreign currency ceiling to Ba1 from Baa3. Moody’s iterated these ratings in April and October 2023, noting that such ratings are “stable.” Based upon our review of this Moody’s correspondence, we continue to believe that no material allowance for credit losses is required for CW-Bahamas’ accounts receivable from the WSC.

If CW-Bahamas is unable to collect a sufficient portion of its delinquent accounts receivable, one or more of the following events may occur: (i) CW-Bahamas may not have sufficient liquidity to meet its obligations; (ii) we may be required to cease the recognition of revenue on CW-Bahamas’ water supply agreements with the WSC; and (iii) we may be required to provide a material allowance for credit losses for CW-Bahamas’ accounts receivable. Any of these events could have a material adverse impact on our consolidated financial condition, results of operations, and cash flows.

36

Discussion of Cash Flows for the Year Ended December 31, 2023

Our cash and cash equivalents decreased to $42,621,898 as of December 31, 2023 from $50,711,751 as of December 31, 2022.

Cash Flows from Operating Activities

Net cash provided by our operating activities was $7,970,762. This net cash provided reflects net income generated for the year ended December 31, 2023 of $30,159,182 as adjusted for (i) various items included in the determination of net income that do not affect cash flows during the year; and (ii) 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,576,454, an increase in accounts receivable of $10,970,521 attributable principally to CW-Bahamas, an increase in contract assets of $18,639,335 due primarily to the Red Gate and Liberty Utilities construction contracts, a decrease in contract liabilities of $2,566,910 and an increase in accounts payable, accrued expenses and accrued compensation of $3,161,386.

Cash Flows from Investing Activities

Net cash used by our investing activities was $10,887,019. Cash used for additions to property, plant and equipment and construction in progress was $5,047,884. We purchased the remaining 39% ownership interest in PERC for $2,440,027 and 368,383 shares of the Company’s common stock, and we acquired REC for a net cash outflow (i.e. the purchase price paid in cash less the cash held by REC at the acquisition date) of $3,419,916.

Cash Flows from Financing Activities

Net cash used by our financing activities was $5,524,565, almost all of which related to the payment of dividends.

Revolving Credit Facility

In September 2022, Cayman Water entered into an agreement (the “Credit Agreement”) with Scotiabank & Trust (Cayman) Ltd. (the “Bank”) for a revolving credit facility in an aggregate principal amount of up to $10.0 million (the “Credit Facility”). We expect to utilize the funds obtained from the Credit Facility for general working capital purposes.

The Credit Facility matures two years following the date of the initial advance (the “Maturity Date”). All amounts outstanding under the Credit Facility are due and payable upon the earlier of the Maturity Date, demand from the bank or the acceleration of the Credit Facility upon an event of default.

The principal balance of the Credit Facility bears interest at a rate of 2.0% plus the secured overnight financing rate (“SOFR”) as determined by the SOFR Administrator for a one-month period on the day that is two days prior to the first day of the interest period. All interest calculations will be made based on a 360-day year. So long as the Bank has not demanded repayment, interest will be payable monthly, commencing one month from the initial advance, with the outstanding balance due on the Maturity Date, unless the Bank agrees to renew the Credit Facility for an additional period.

Cayman Water’s obligations under the Credit Agreement are secured by a first priority lien on all its fixed and floating assets and an assignment of insurance proceeds with respect to its fixed assets. Further, the Company has guaranteed the repayment of all of Cayman Water’s present and future debts and liabilities owed to the Bank.

The Credit Agreement requires Cayman Water to meet certain financial covenants.

37

Cayman Water has not yet utilized any of its available borrowings under the Credit Facility.

Material Commitments, Expenditures and Contingencies

Cayman Water Retail License

We sell water through our retail operations under a license issued in July 1990 by the Cayman Islands government (the “1990 license”) that granted Cayman Water the exclusive right to provide potable water to customers within its licensed service area. Although the 1990 license has not been expressly extended after January 2018, we continue to supply water under the terms of the 1990 license, as discussed in the following paragraphs. 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 2023 and 2022, we generated approximately 17% and 27%, respectively, of our consolidated revenue and 26% and 44%, respectively, of our consolidated gross profit from the retail water operations conducted under the 1990 license.

The 1990 license was originally scheduled to expire in July 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 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 a royalty of 7.5% of the revenue we collect as required under the 1990 license.

In October 2016, the Government of the Cayman Islands passed legislation which created a new utilities regulation and competition office (“OfReg”). 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 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 2017, which transferred responsibility for economic regulation of the water utility sector and the retail license negotiations from the WAC to OfReg in May 2017. We began license negotiations with OfReg in July 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.

The Cayman Islands government could seek to grant a third party a license to service some or all of Cayman Water’s present service area. However, as set forth in the 1990 license, “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.”

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 value of our retail segment assets. Such impairment losses could have a material adverse impact on our consolidated financial condition and results of operations.

CW-Bahamas Performance Guarantees

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 WSC requires the water and 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.

38

Adoption of New Accounting Standards

Financial Accounting Standard Update (“ASU”) 2016-13, Measurement of Credit Losses on Financial Instruments, and related amendments, introduces new guidance which makes substantive changes to the accounting for credit losses. This guidance introduces the current expected credit losses (“CECL”) model which applies to financial assets subject to credit losses and measured at amortized cost, as well as certain off-balance sheet credit exposures. The CECL model requires an entity to estimate credit losses expected over the life of an exposure, considering information about historical events, current conditions, and reasonable and supportable forecasts and is generally expected to result in earlier recognition of credit losses. We adopted this guidance as of January 1, 2023 using the modified retrospective approach. The impact of this adoption was not material to our consolidated financial statements.

Effect of Newly Issued but not yet Effective Accounting Standards

In November 2023, the Financial Accounting Standards Board (“FASB”) issued Accounting Standards Update ("ASU") 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures. This ASU updates reportable segment disclosure requirements by requiring disclosures of significant reportable segment expenses that are regularly provided to the Chief Operating Decision Maker (“CODM”) and included within each reported measure of a segment's profit or loss. This ASU also requires disclosure of the title and position of the individual identified as the CODM and an explanation of how the CODM uses the reported measures of a segment’s profit or loss in assessing segment performance and deciding how to allocate resources. The ASU is effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. Early adoption is permitted. We are currently evaluating the impact of this guidance.

In December 2023, the FASB issued ASU 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures. The ASU requires disaggregated information about a reporting entity’s effective tax rate reconciliation as well as additional information on income taxes paid. The ASU is effective on a prospective basis for annual periods beginning after December 15, 2024. Early adoption is permitted. We are currently evaluating the impact of this guidance.

Dividends

On January 31, 2023, we paid a dividend of $0.085 to shareholders of record on January 3, 2023.
On April 28, 2023, we paid a dividend of $0.085 to shareholders of record on April 3, 2023.
On July 31, 2023, we paid a dividend of $0.085 to shareholders of record on July 3, 2023.
On October 31, 2023, we paid a dividend of $0.095 to shareholders of record on October 2, 2023.
On January 31, 2024, we paid a dividend of $0.095 to shareholders of record on January 2, 2024.
On February 20, 2024, our Board declared a dividend of $0.095 payable on April 30, 2024 to shareholders of record on April 1, 2024.

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.

Dividend Reinvestment and Common Stock Purchase Plan

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.

Impact of Inflation

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

39

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 profit generated by our retail segment. Furthermore, our manufacturing segment has been adversely impacted by recent significant increases in raw material costs and our services segment could suffer similar adverse impacts in the future. Should the current inflationary trend continue, our consolidated results of operations and cash flows could be materially adversely affected. In general, our operating and maintenance contracts are adjusted annually for the impacts of inflation.

While PERC’s operations and maintenance contracts are generally adjusted for inflation on an annual basis, such adjustment for some of these contracts is limited to 3% annually.

Kalaeloa Desalco, which is jointly owned by PERC and CW-Holdings, has signed a definitive agreement with the Honolulu Board of Water Supply to design, build, operate and maintain a 1.7 million gallons per day seawater reverse osmosis desalination plant in Oahu, Hawaii. Approximately 80% of the $150 million price for the construction of this plant is subject to adjustment based upon changes in inflation indices from the date the contract was executed to the date construction begins.

Increases in fuel and energy costs and other items could create additional credit risks for us, as our customers’ ability to pay our invoices could be adversely affected by such increases.

ITEM 7A.

QUANTITATIVE AND QUALITATIVE DISCLOSURE ABOUT MARKET RISK

Not applicable.

40

ITEM 8.

FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA

 

Page

CONSOLIDATED WATER CO. LTD.

 

INDEX TO CONSOLIDATED FINANCIAL STATEMENTS

 

Report of Independent Registered Public Accounting Firm (PCAOB ID No. 688)

42-43

Consolidated Balance Sheets as of December 31, 2023 and 2022

44

Consolidated Statements of Income for the Years Ended December 31, 2023 and 2022

45

Consolidated Statements of Stockholders’ Equity for the Years Ended December 31, 2023 and 2022

46

Consolidated Statements of Cash Flows for the Years Ended December 31, 2023 and 2022

47

Notes to Consolidated Financial Statements

48

Schedule II, Valuation and Qualifying Accounts, is omitted because the information is included in the financial statements and notes.

41

REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM

To the Shareholders and Board of Directors of

Consolidated Water Co. Ltd.

Opinion on the Financial Statements

We have audited the accompanying consolidated balance sheets of Consolidated Water Co. Ltd. (the “Company”) as of December 31, 2023 and 2022, the related consolidated statements of income, stockholders’ equity and cash flows for each of the two years in the period ended December 31, 2023, and the related notes (collectively referred to as the “financial statements”).  In our opinion, the financial statements present fairly, in all material respects, the financial position of the Company as of December 31, 2023 and 2022, and the results of its operations and its cash flows for each of the two years in the period ended December 31, 2023, in conformity with accounting principles generally accepted in the United States of America.

Basis for Opinion

These financial statements are the responsibility of the Company's management. Our responsibility is to express an opinion on the Company's financial statements based on our audits. We are a public accounting firm registered with the Public Company Accounting Oversight Board (United States) ("PCAOB") 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.

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's internal control over financial reporting. Accordingly, we express no such opinion.

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.

Critical Audit Matters

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.

Revenue Recognition - Estimated Costs to Complete

As described in Note 2 to the consolidated financial statements, the Company recognizes revenue for its construction and custom/specialized manufacturing contracts over time under the input method using costs incurred to date relative to the total estimated costs at completion to measure progress toward satisfying a contract's performance obligations as such measure best reflects the transfer of control of the promised good to the customer.  The cost estimation process for these contracts is based on the knowledge and experience of the Company's project managers, engineers, and financial professionals.  Changes in job performance, job conditions and management's assessment of expected variable

42

consideration are factors that influence estimates of the total contract transaction price, total costs to complete those contracts and the Company's revenue recognition.

We identified the estimated costs to complete on these revenue contracts as a critical audit matter.  The determination of the total estimated cost and progress toward completion requires management to make significant estimates and assumptions.  Total estimated costs to complete projects include various contracts costs that include labor, materials and subcontractor costs.  Due to the extended time it may take to complete many of the Company’s contracts and the scope and nature of the work required to be performed on those contracts, the estimations of total revenue and costs at completion is complicated and subject to many variables and, accordingly, are subject to changes.  Changes in these estimates can have a significant impact on the revenue recognized each period. Auditing these estimates involved especially challenging auditor judgment in evaluating the reasonableness of management's assumptions and estimates over the duration of these contracts.

The primary procedures we performed to address this critical audit matter included:

We obtained an understanding and evaluated the design and implementation of the internal controls over management's process related to estimated costs to complete, including controls over management's review of: (i) the development of project budgets and key cost inputs, (ii) the ongoing assessment and revisions to project budgets, and (iii) the ongoing review of project status, including the nature of activities to complete open projects.

Evaluating management’s ability to generate reasonable estimated costs to complete through performing a retrospective review of budget to actual variances.

Assessing the reasonableness of the estimated costs to complete by evaluating the reasonableness of projects budgets and the nature of costs required to complete the project. Evaluation consists of investigating significant differences or unexpected results that take into consideration known changes in client operations, industry, and/or business conditions.

Assessing the accuracy and the occurrence of the actual cost amount used in the percentage of completion by testing a sample of project costs incurred to date.

Evaluating the reasonableness of project status by performing site visits and performing inquiries of project managers to assess the nature and costs of activities required to complete the project.

Assessing the reasonableness of changes in estimated costs to complete by comparing project profitability estimates in the current period to historical estimates and actual performance including during the period under audit and subsequent to the period end and investigating reasons for changes in expected costs and project margins.

/s/ Marcum LLP

We have served as the Company’s auditor since 2005.

West Palm Beach, Florida

March 27, 2024

43

CONSOLIDATED WATER CO. LTD.

CONSOLIDATED BALANCE SHEETS

 

December 31, 

 

2023

    

2022

ASSETS

  

 

  

Current assets

  

 

  

Cash and cash equivalents

$

42,621,898

$

50,711,751

Accounts receivable, net

 

38,226,891

 

27,046,182

Inventory

 

6,044,642

 

5,727,842

Prepaid expenses and other current assets

 

4,056,370

 

5,643,279

Contract assets

 

21,553,057

 

2,913,722

Current assets of discontinued operations

 

211,517

 

531,480

Total current assets

112,714,375

 

92,574,256

Property, plant and equipment, net

 

55,882,521

 

52,529,545

Construction in progress

 

495,471

 

3,705,681

Inventory, noncurrent

 

5,045,771

 

4,550,987

Investment in OC-BVI

 

1,412,158

 

1,545,430

Goodwill

 

12,861,404

 

10,425,013

Intangible assets, net

 

3,353,185

 

2,818,888

Operating lease right-of-use assets

2,135,446

2,058,384

Other assets

 

3,407,973

 

1,669,377

Long-term assets of discontinued operations

 

21,129,288

 

21,129,288

Total assets

$

218,437,592

$

193,006,849

LIABILITIES AND EQUITY

 

  

 

  

Current liabilities

 

  

 

  

Accounts payable, accrued expenses and other current liabilities

$

11,604,369

$

8,438,315

Accounts payable - related parties

403,839

Accrued compensation

 

3,160,030

 

2,267,583

Dividends payable

 

1,572,655

 

1,375,403

Current maturities of operating leases

456,865

546,851

Current portion of long-term debt

192,034

114,964

Contract liabilities

 

6,237,011

 

8,803,921

Deferred revenue

317,017

315,825

Current liabilities of discontinued operations

 

364,665

 

389,884

Total current liabilities

 

23,904,646

 

22,656,585

Long-term debt, noncurrent

191,190

216,117

Deferred tax liabilities

 

530,780

 

560,306

Noncurrent operating leases

1,827,302

1,590,542

Other liabilities

 

153,000

 

219,110

Long-term liabilities of discontinued operations

Total liabilities

 

26,606,918

 

25,242,660

Commitments and contingencies

 

  

 

  

Equity

 

  

 

  

Consolidated Water Co. Ltd. stockholders' equity

 

  

 

  

Redeemable preferred stock, $0.60 par value. Authorized 200,000 shares; issued and outstanding 44,297 and 34,383 shares, respectively

 

26,578

 

20,630

Class A common stock, $0.60 par value. Authorized 24,655,000 shares; issued and outstanding 15,771,545 and 15,322,875 shares, respectively

 

9,462,927

 

9,193,725

Class B common stock, $0.60 par value. Authorized 145,000 shares; none issued

 

 

Additional paid-in capital

 

92,188,887

 

89,205,159

Retained earnings

 

85,148,820

 

61,247,699

Total Consolidated Water Co. Ltd. stockholders' equity

 

186,827,212

 

159,667,213

Non-controlling interests

 

5,003,462

 

8,096,976

Total equity

 

191,830,674

 

167,764,189

Total liabilities and equity

$

218,437,592

$

193,006,849

The accompanying notes are an integral part of these consolidated financial statements.

44

CONSOLIDATED WATER CO. LTD.

CONSOLIDATED STATEMENTS OF INCOME

 

Year Ended December 31, 

 

2023

    

2022

Revenue

$

180,211,233

$

94,104,972

Cost of revenue (including related party expense of $0 and $2,694,810 in 2023 and 2022)

 

118,284,128

 

63,749,849

Gross profit

 

61,927,105

 

30,355,123

General and administrative expenses (including related party expense of $0 and $96,924 in 2023 and 2022)

 

24,752,366

 

21,070,234

Loss on asset dispositions and impairments, net

 

(7,112)

 

(12,704)

Income from operations

 

37,167,627

 

9,272,185

Other income (expense):

 

  

 

  

Interest income

 

696,408

 

447,186

Interest expense

 

(145,284)

 

(46,545)

Profit-sharing income from OC-BVI

 

46,575

 

26,325

Equity in the earnings of OC-BVI

 

123,153

 

75,900

Loss on put/call options

 

 

(128,000)

Other

 

107,461

 

89,944

Other income, net

 

828,313

 

464,810

Income before income taxes

 

37,995,940

 

9,736,995

Provision for income taxes

 

6,750,014

 

396,739

Net income from continuing operations

 

31,245,926

 

9,340,256

Income from continuing operations attributable to non-controlling interests

 

573,791

 

1,112,913

Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders

 

30,672,135

 

8,227,343

Loss from discontinued operations

(1,086,744)

(2,371,049)

Net income attributable to Consolidated Water Co. Ltd. stockholders

$

29,585,391

$

5,856,294

Basic earnings (loss) per common share attributable to Consolidated Water Co. Ltd. common stockholders

 

  

 

  

Continuing operations

$

1.95

$

0.54

Discontinued operations

(0.07)

(0.16)

Basic earnings per share

$

1.88

$

0.38

Diluted earnings (loss) per common share attributable to Consolidated Water Co. Ltd. common stockholders

 

  

 

  

Continuing operations

$

1.93

$

0.54

Discontinued operations

(0.07)

(0.16)

Diluted earnings per share

$

1.86

$

0.38

Dividends declared per common and redeemable preferred shares

$

0.36

$

0.34

Weighted average number of common shares used in the determination of:

 

  

 

  

Basic earnings per share

 

15,739,056

 

15,290,509

Diluted earnings per share

 

15,865,897

 

15,401,653

The accompanying notes are an integral part of these consolidated financial statements.

45

CONSOLIDATED WATER CO. LTD.

CONSOLIDATED STATEMENTS OF STOCKHOLDERS’ EQUITY

Redeemable

Additional

Total

preferred stock

Common stock

paid-in

Retained

Non-controlling

stockholders’

    

Shares

    

Dollars

    

Shares

    

Dollars

    

capital

    

earnings

    

interests

    

equity

Balance as of December 31, 2021

 

28,635

$

17,181

 

15,243,693

$

9,146,216

$

87,812,432

$

60,603,056

$

8,086,538

$

165,665,423

Issuance of share capital

 

9,295

 

5,577

 

72,597

 

43,558

 

(49,135)

 

 

 

Conversion of preferred stock

 

(6,585)

 

(3,951)

 

6,585

 

3,951

 

 

 

 

Buyback of preferred stock

 

(26)

 

(15)

 

 

 

(211)

 

 

 

(226)

Net income

 

 

 

 

 

 

5,856,294

 

1,112,913

 

6,969,207

Exercise of options

 

3,064

 

1,838

 

 

 

24,901

 

 

 

26,739

Dividends declared

 

 

 

 

 

 

(5,211,651)

 

(1,102,475)

 

(6,314,126)

Stock-based compensation

 

 

 

 

 

1,417,172

 

 

 

1,417,172

Balance as of December 31, 2022

 

34,383

 

20,630

 

15,322,875

 

9,193,725

 

89,205,159

 

61,247,699

 

8,096,976

 

167,764,189

Issuance of share capital

 

13,309

 

7,985

 

68,864

 

41,319

 

(49,304)

 

 

 

Conversion of preferred stock

 

(8,848)

 

(5,309)

 

8,848

 

5,309

 

 

 

 

Buyback of preferred stock

 

(203)

 

(122)

 

 

 

(1,708)

 

 

 

(1,830)

Net income

 

 

 

 

 

 

29,585,391

 

573,791

 

30,159,182

Purchase of remaining non-controlling interest in PERC

368,383

221,030

1,006,248

(3,667,305)

(2,440,027)

Exercise of options

 

5,656

 

3,394

 

2,575

 

1,544

 

94,826

 

 

 

99,764

Dividends declared

 

 

 

 

 

 

(5,684,270)

 

 

(5,684,270)

Stock-based compensation

 

 

 

 

 

1,933,666

 

 

 

1,933,666

Balance as of December 31, 2023

 

44,297

$

26,578

 

15,771,545

$

9,462,927

$

92,188,887

$

85,148,820

$

5,003,462

$

191,830,674

The accompanying notes are an integral part of these consolidated financial statements.

46

CONSOLIDATED WATER CO. LTD.

CONSOLIDATED STATEMENTS OF CASH FLOWS

 

Year Ended December 31, 

 

2023

    

2022

Cash flows from operating activities

 

  

Net income attributable to Consolidated Water Co. Ltd. stockholders

$

29,585,391

$

5,856,294

Income from continuing operations attributable to non-controlling interests

573,791

1,112,913

Net income

30,159,182

6,969,207

Adjustments to reconcile net income to net cash provided by operating activities:

 

  

 

  

Impairment loss for Mexico assets - discontinued operations

377,326

Foreign currency transaction adjustment - discontinued operations

(2,003)

(102,507)

Loss from discontinued operations

 

1,088,747

 

2,096,230

Depreciation and amortization

 

6,576,454

 

6,187,308

Deferred income tax benefit

 

(524,999)

 

(4,220)

Provision for credit losses

408,489

Loss on net put/call option

 

 

128,000

Compensation expense relating to stock and stock option grants

 

1,933,666

 

1,417,172

Gain on asset dispositions and impairments, net

 

7,112

 

12,704

Profit-sharing and equity in earnings of OC-BVI

 

(169,728)

 

(102,225)

Distribution of earnings from OC-BVI

 

303,000

 

272,700

Change in:

 

 

Accounts receivable

 

(10,970,521)

 

303,125

Contract assets

(18,639,335)

(2,423,761)

Inventory

 

(891,405)

 

(3,387,011)

Prepaid expenses and other assets

 

(755,391)

 

(3,365,747)

Accounts payable (including related parties), accrued expenses and other current liabilities

 

3,161,386

 

6,756,433

Contract liabilities

(2,566,910)

8,290,043

Operating lease liabilities

(5,205)

(5,208)

Deferred revenue

1,192

(267,821)

Net cash provided by operating activities - continuing operations

9,113,731

23,151,748

Net cash used in operating activities - discontinued operations

 

(1,142,969)

 

(1,819,943)

Net cash provided by operating activities

7,970,762

21,331,805

Cash flows from investing activities

 

  

 

  

Purchase of certificate of deposit

(2,518,493)

Maturity of certificate of deposit

5,018,493

Additions to property, plant and equipment and construction in progress

 

(5,047,884)

 

(7,542,761)

Proceeds from asset dispositions

 

20,808

 

61,725

Purchase of remaining non-controlling interest in PERC

(2,440,027)

Acquisition of REC, net of cash acquired

(3,419,916)

Net cash used in investing activities

(10,887,019)

(4,981,036)

Cash flows from financing activities

 

  

 

  

Dividends paid to common shareholders

 

(5,472,790)

 

(5,145,742)

Dividends paid to preferred shareholders

 

(14,228)

 

(11,078)

Dividends paid to non-controlling interests

(1,102,475)

Buyback of redeemable preferred stock

 

(1,830)

 

(226)

Proceeds received from exercise of stock options

99,764

26,739

Principal repayments on long-term debt

(135,481)

(72,091)

Net cash used in financing activities

 

(5,524,565)

 

(6,304,873)

Net increase (decrease) in cash and cash equivalents

 

(8,440,822)

 

10,045,896

Cash and cash equivalents at beginning of period

 

50,711,751

 

40,358,059

Cash and cash equivalents at beginning of period - discontinued operations

442,252

750,048

Less: cash and cash equivalents at end of period - discontinued operations

(91,283)

(442,252)

Cash and cash equivalents at end of period

$

42,621,898

$

50,711,751

The accompanying notes are an integral part of these consolidated financial statements.

47

CONSOLIDATED WATER CO. LTD.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

1. Principal activity

Consolidated Water Co. Ltd. and its subsidiaries (collectively, the “Company”) supply potable water, treat wastewater and 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.

2. Accounting policies

Basis of preparation: The consolidated financial statements presented are prepared in accordance with the accounting principles generally accepted in the United States of America.

Use of estimates: 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 revenue 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 revenue recognition on construction and manufacturing contracts. Actual results could differ significantly from such estimates.

Basis of consolidation: The accompanying consolidated financial statements include the accounts of the Company’s (i) wholly-owned subsidiaries, Aerex Industries, Inc. (“Aerex”), Aquilex, Inc. (“Aquilex”), Cayman Water Company Limited (“Cayman Water”), Consolidated Water Cooperatief, U.A. (“CW-Cooperatief”), Consolidated Water U.S. Holdings, Inc. (“CW-Holdings”), DesalCo Limited (“DesalCo”), Kalaeloa Desalco LLC (“Kalaeloa Desalco”), Ocean Conversion (Cayman) Limited (“OC-Cayman”), PERC Water Corporation ("PERC") and Ramey Environmental Compliance, Inc. (“REC”); and (ii) majority-owned subsidiaries Consolidated Water (Bahamas) Ltd. (“CW-Bahamas”), N.S.C. Agua, S.A. de C.V. (“NSC”), and Aguas de Rosarito S.A.P.I. de C.V. (“AdR”). The Company’s investment in its affiliate Ocean Conversion (BVI) Ltd. (“OC-BVI”) is accounted for using the equity method of accounting. All significant intercompany balances and transactions have been eliminated in consolidation.

In January 2023, as a result of CW-Holdings' exercise of a call option in October 2022, CW-Holdings purchased the remaining 39% ownership interest in PERC for $2.4 million in cash, and 368,383 shares of the Company’s common stock having a value of approximately $5.36 million based upon the opening trading price of the Company’s common stock on The Nasdaq Global Market on the date of the transaction. After giving effect to this purchase, CW-Holdings owns 100% of the outstanding capital stock of PERC.

In September 2021, Kalaeloa Desalco was formed to pursue a project in Oahu, Hawaii. On June 2, 2023, Kalaeloa Desalco signed a definitive agreement with the Honolulu Board of Water Supply to design, build, operate and maintain a 1.7 million gallons per day seawater reverse osmosis desalination plant in Oahu, Hawaii.

Effective October 1, 2023, the Company purchased, through its wholly-owned subsidiary PERC, a 100% ownership interest in Ramey Environmental Compliance, Inc., a Colorado company that operates and maintains water and wastewater treatment facilities and provides technical services to clients throughout the Rocky Mountain and Eastern Plains Regions of Colorado. PERC acquired REC in November 2023 for approximately $4.1 million and recorded goodwill and intangible assets from this acquisition of $2,436,391 and $1,108,390 respectively.

48

Foreign currency: The Company’s reporting currency is the United States dollar (“US$”). The functional currency of the Company and its foreign operating 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 $84,678 and $41,750 for the years ended December 31, 2023 and 2022, respectively, and are included in “Other income - Other” in the accompanying consolidated statements of income.

Cash and cash equivalents: Cash and cash equivalents consist of demand deposits at banks and certificates of deposit at banks with an original maturity of three months or less. Cash and cash equivalents as of December 31, 2023 and 2022 include $5.1 million and $5.0 million, respectively, of certificates of deposit with an original maturity of three months or less.

As of December 31, 2023, the Company had deposits in U.S. banks in excess of federally insured limits of approximately $16.9 million. As of December 31, 2023, the Company held cash in foreign bank accounts of approximately $24.2 million.

Certain transfers from the Company’s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of The Bahamas. The equivalent United States dollar cash balances for deposits held in The Bahamas as of December 31, 2023 and 2022 were approximately $3.0 million and $5.7 million, respectively.

Accounts receivable: Accounts receivable are recorded at invoiced amounts based on meter readings, contractual amounts, fixed fees plus reimbursables or time and materials per contractual agreements. 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.

Allowance for credit losses: The allowance for credit losses is the Company’s best estimate of the amount of probable credit losses in the Company’s existing accounts receivable and contract assets balances. The Company determines the current expected credit losses based on historical loss experience, current conditions, and reasonable and supportable forecasts. The Company also considers the nature of the financial asset, the credit quality of the counterparty, and other relevant factors.

Past due balances are reviewed individually for collectability. Account balances are charged off against the allowance for credit losses after all means of collection have been exhausted and the potential for recovery is considered by management to be remote.

Inventory: Inventory primarily consists of 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 (i) raw materials purchased for specific manufacturing contracts that are valued at cost on the first-in, first-out basis; and (ii) potable water held in the Company’s reservoirs that is valued at the lower of the average cost of producing water during the year or its net realizable value.

Contract assets and liabilities: Billing practices for the Company’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, which is recognized over time using the input method based on cost incurred. The Company records contract assets and contract liabilities to account for these differences in timing.

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

49

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 is recognized, and the liability is reduced, as the Company subsequently satisfies the performance obligation under the contract.

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 considered significant financing components.

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.

The Company’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.

Property, plant and equipment, net: 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:

Buildings

    

5 to 40 years

Plant and equipment

 

4 to 40 years

Distribution system

 

3 to 40 years

Office furniture, fixtures and equipment

 

3 to 10 years

Vehicles

 

3 to 10 years

Leasehold improvements

 

Shorter of 5 years or lease term

Lab equipment

 

5 to 10 years

Assets under construction are recorded as additions to property, plant and equipment upon completion of the projects. Depreciation commences in the 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.

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, 2023 or 2022.

Long-lived assets: 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.

50

Goodwill and intangible assets: Goodwill represents the excess cost of an acquired business over the fair value of the assets and liabilities of the acquired business as of the date of acquisition. Goodwill and intangible assets recorded as a result of a business combination 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 year. Management identifies the Company’s reporting units for goodwill impairment testing purposes, which consist of Cayman Water, the bulk segment (which is comprised of CW-Bahamas and OC-Cayman), PERC, and the manufacturing segment (i.e., Aerex), 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 these fair values to the carrying amounts of the reporting units. To the extent the carrying amount of a reporting unit exceeds the fair value of the reporting unit, an impairment loss is recorded.

For the year ended December 31, 2023, the Company elected to assess qualitative factors to determine whether it was necessary to perform the quantitative goodwill impairment testing that was conducted in prior years for the reporting units. The Company assessed the relevant events and circumstances to evaluate whether it is more likely than not that the fair values of such reporting units are less than their carrying values. The events and circumstances assessed for each reporting unit included macroeconomic conditions, industry and market conditions, cost factors, overall financial performance, and other relevant events. Based upon this qualitative assessment, the Company determined that it is more likely than not that the fair values of its reporting units exceeded their carrying values as of December 31, 2023.

For the year ended December 31, 2022, the Company elected to assess qualitative factors to determine whether it was necessary to perform the quantitative goodwill impairment testing conducted in prior years for all reporting units other than the manufacturing reporting unit. The Company assessed relevant events and circumstances to evaluate whether it is more likely than not that the fair values of such reporting units are less than their carrying values. The events and circumstances assessed for each reporting unit included macroeconomic conditions, industry and market conditions, cost factors, overall financial performance, and other relevant events. Based upon this qualitative assessment the Company determined that it was more likely than not that the fair values of its Cayman Water and bulk segment reporting units exceeded their carrying values as of December 31, 2022. Based upon the Company’s negotiated, arms-length purchase of the remaining 39% equity interest in PERC from its minority shareholders for $7.8 million in January 2023, the fair value of the Company’s PERC reporting unit exceeded its carrying value by 79% as of December 31, 2022.

Due to the factors discussed in the following paragraphs, the Company elected to test the goodwill associated with its manufacturing reporting unit for possible impairment for 2022 using the quantitative tests applied in prior years.

Approximately 80% of Aerex’s revenue, and 89% of Aerex’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’s revenue from this customer had 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’s future cash flows. Such projections assumed, in part, that Aerex’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’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.

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’s updated sales estimate for this customer based on this new information was substantially below the

51

anticipated sales to this customer for 2022 and subsequent years that the Company used in the discounted cash flow projections it prepared for purposes of testing its Manufacturing reporting unit’s goodwill for possible impairment as of December 31, 2020. Furthermore, Aerex’s efforts to replace the revenue previously generated from this customer with revenue from existing and new customers were adversely impacted by the negative economic conditions (caused in part by the COVID-19 pandemic). These negative economic conditions also increased Aerex’s raw material costs, resulted in raw material shortages and extended delivery times for such materials, and adversely affected the overall financial condition of Aerex’s current and prospective customers. Accordingly, in light of this new information from Aerex’s former major customer, and the on-going weak economic conditions that the Company believed would continue through 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 segment’s goodwill by this amount for the three months ended June 30, 2021.

For the year ended December 31, 2022, the Company estimated the fair value of its manufacturing reporting unit 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. The Company also estimated the fair value of its manufacturing reporting unit for the year ended December 31, 2022 by applying the guideline public company method. The Company weighted the fair values estimated for its manufacturing reporting unit under each method and summed such weighted fair values to estimate the overall fair value for the reporting unit. The respective weightings the Company applied to each method for the year ended December 31, 2022 were 80% to the discounted cash flow method and 20% to the guideline public company method.

The fair value the Company estimated for its manufacturing reporting unit exceeded its carrying amount by 63% as of December 31, 2022.

Investments: 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.

Other assets: Under the terms of CW-Bahamas’ contract with the Water and Sewerage Corporation of The Bahamas (“WSC”) 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 31, 2023 and 2022. Accumulated amortization for these costs was approximately $3.1 million and $2.9 million as of December 31, 2023 and 2022, respectively. Amortization expense for these costs was $179,353 for the years ended December 31, 2023 and 2022.

Income taxes: 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 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

52

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.

The Company is not presently subject to income taxes in the other countries in which it operates.

Revenue recognition: Revenue is recognized when control of the promised goods or services is transferred to the Company’s customers, in an amount that reflects the consideration the Company expects to be entitled to in exchange for those goods or services.

The following table presents the Company’s revenue disaggregated by revenue source.

 

Year Ended December 31, 

 

2023

    

2022

Retail revenue

$

30,158,051

$

25,954,013

Bulk revenue

 

34,595,058

 

32,991,066

Services revenue

 

97,966,650

 

28,835,428

Manufacturing revenue

 

17,491,474

 

6,324,465

Total revenue

$

180,211,233

$

94,104,972

Services revenue consists of the following:

 

Year Ended December 31, 

 

2023

    

2022

Construction revenue

$

77,306,704

$

11,616,274

Operations and maintenance revenue

 

19,368,365

 

14,152,158

Design and consulting revenue

 

1,291,581

 

3,066,996

Total services revenue

$

97,966,650

$

28,835,428

Retail revenue

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. Customers are billed 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.

The Company recognizes revenue from water sales at the time water is supplied to the customer’s premises. The amount of water supplied is determined and invoiced based upon water meter readings performed at the end of each month. All retail water contracts are month-to-month contracts. The Company has elected the “right to invoice” 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, recognizing this revenue from the transfer of goods or services to customers at a point in time.

Bulk revenue

The Company produces and supplies water to government-owned utilities in the Cayman Islands and The Bahamas.

OC-Cayman provides bulk water to the Water Authority-Cayman (“WAC”), 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’s retail license area.

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 (“WSC”), which distributes such water through its own pipeline system to residential, commercial and tourist properties on the island of New Providence.

53

The Company has elected the “right to invoice” 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, recognizing this revenue from the transfer of goods or services to customers at a point in time.

Services and Manufacturing revenue

The Company designs, builds, sells, operates and maintains, and provides consulting services related to water, wastewater and water reuse infrastructure through PERC. All of PERC's customers are companies or governmental entities located in the United States. Effective October 2023, PERC acquired REC, a company that provides operations and maintenance and consulting services to companies and governmental entities located in the United States.

The Company also 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.

The Company, through Aerex, is a custom and specialty manufacturer of systems and products applicable to commercial, municipal and industrial water production and treatment. Substantially all of Aerex’s customers are U.S. companies.

The Company generates construction, operations and maintenance, design and consulting revenue from PERC and DesalCo and generates manufacturing revenue from Aerex. The Company also generates operations and maintenance and consulting revenue from REC.

The Company recognizes revenue for its construction and custom/specialized manufacturing contracts over time under the input method using costs incurred (which represents work performed) to date relative to the total estimated costs at completion to measure progress toward satisfying a contract’s performance obligations as such measure best reflects the transfer of control of the promised good to the customer. Contract costs include labor, materials, subcontractor costs and other expenses. 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 costs to be incurred 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 percentage of total estimated revenue that incurred costs to date comprise of estimated total contract costs. Due to the extended time it may take to complete many of the Company’s contracts and the scope and nature of the work required to be performed on those contracts, the estimations of total revenue and costs at completion are complicated and subject to many variables and, accordingly, are subject to changes. When adjustments in estimated total contract revenue or estimated total contract costs are required, any changes from prior estimates are recognized in the current period for the inception-to-date effect of such changes. 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.

During the year ended December 31, 2023, the Company adjusted its prior year estimates of the total contract costs for two of its construction contracts. These changes in accounting estimates resulted in an increase in the services segment’s income from operations and the Company’s consolidated net income by $2,356,439 and $1,750,750, respectively, for the year ended December 31, 2023. This adjustment increased basic and diluted earnings per share by $0.11 for the year ended December 31, 2023.

The Company has elected the “right to invoice” practical expedient for revenue recognition on its operations and maintenance, design and consulting contracts and recognizes revenue in the amount to which the Company has a right to invoice, recognizing this revenue from the transfer of goods or services to customers at a point in time.

54

During the years ended December 31, 2023 and 2022, the Company recognized $77,411,792 and $14,146,271, respectively, of its services revenue from the transfer of goods or services to customers over time. The remaining services revenue of $20,554,858 and $14,689,157, respectively, was recognized from the transfer of goods or services to customers at a point in time. During the years ended December 31, 2023 and 2022, the Company recognized all of its manufacturing revenue from the transfer of goods or services to customers over time.

Practical Expedients and Exemptions

The Company does not disclose the value of unsatisfied performance obligations for (i) contracts with an original expected length of one year or less and (ii) contracts for which the Company recognizes revenue at the amount to which it has the right to invoice for services performed.

Comparative amounts: Certain amounts presented in the financial statements previously issued for 2022 have been reclassified to conform to the current year’s presentation.

3. Cash and cash equivalents

Cash and cash equivalents are not restricted by the terms of the Company’s bank accounts as to withdrawal or use. As of December 31, 2023 and 2022, the equivalent United States dollars of the Company’s cash and cash equivalents, including those accounts denominated in currencies other than the U.S. dollar, are as follows:

December 31, 

    

2023

    

2022

Bank accounts:

 

  

 

  

United States dollar

$

15,857,612

$

24,573,161

Cayman Islands dollar

 

11,826,102

 

14,956,162

Bahamian dollar

 

3,025,898

 

5,698,100

 

30,709,612

 

45,227,423

Short-term deposits:

 

  

 

  

United States dollar

 

8,861,606

 

2,476,370

Cayman Islands dollar

 

3,050,680

 

3,007,958

 

11,912,286

 

5,484,328

Total cash and cash equivalents

$

42,621,898

$

50,711,751

Transfers from the Company’s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of The Bahamas.

4. Accounts receivable, net

December 31, 

    

2023

    

2022

Trade accounts receivable

$

38,446,554

$

27,163,719

Receivable from OC-BVI

 

41,129

 

37,293

Other accounts receivable

 

322,609

 

28,384

 

38,810,292

 

27,229,396

Allowance for credit losses

 

(583,401)

 

(183,214)

Accounts receivable, net

$

38,226,891

$

27,046,182

55

The activity for the allowance for credit losses consisted of:

December 31, 

    

2023

    

2022

Opening allowance for credit losses

$

183,214

$

183,020

Provision for credit losses

 

408,489

 

Accounts written off during the year

 

(9,215)

 

(726)

Recovery of accounts written off

913

920

Ending allowance for credit losses

$

583,401

$

183,214

Significant concentrations of credit risk are disclosed in Note 18.

5. Inventory

December 31, 

    

2023

    

2022

Spare parts stock

$

7,747,455

$

6,514,333

Raw materials

3,135,357

3,481,486

Consumables stock

 

166,935

 

246,355

Water stock

40,666

36,655

Total inventory

 

11,090,413

 

10,278,829

Less current portion

 

6,044,642

 

5,727,842

Inventory (non-current)

$

5,045,771

$

4,550,987

6. Contracts in progress

Revenue recognized and amounts billed on contracts in progress are summarized as follows:

December 31, 

2023

2022

Revenue recognized to date on contracts in progress

    

$

108,952,682

    

$

25,469,014

Amounts billed to date on contracts in progress

 

(101,724,459)

 

(33,407,182)

Retainage

8,087,823

2,047,969

Net contract asset/(liability)

$

15,316,046

$

(5,890,199)

The above net balances are reflected in the accompanying consolidated balance sheet as follows:

December 31,

2023

2022

Contract assets

    

$

21,553,057

    

$

2,913,722

Contract liabilities

 

(6,237,011)

 

(8,803,921)

Net contract asset/(liability)

$

15,316,046

$

(5,890,199)

The significant increase in contract assets from December 31, 2022 to December 31, 2023 is attributable to the construction contract with the WAC for the Red Gate plant in Grand Cayman and the construction contract with Liberty Utilities for a water treatment facility in Arizona.

During the year ended December 31, 2023, the Company adjusted its prior year estimates of the total contract costs for two of its construction contracts. These changes in accounting estimates resulted in an increase in the services segment’s income from operations and the Company’s consolidated net income by $2,356,439 and $1,750,750, respectively, for the year ended December 31, 2023. This adjustment increased basic and diluted earnings per share by $0.11 for the year ended December 31, 2023.

56

As of December 31, 2023, the Company had unsatisfied or partially unsatisfied performance obligations for contracts in progress representing approximately $162.2 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 $22.2 million during the year ending December 31, 2024 and $140 million thereafter. In addition, the Company recognized revenue of approximately $8.7 million in the year ended December 31, 2023, that was included in the contract liability balance as of December 31, 2022.

7. Property, plant and equipment and construction in progress

December 31, 

    

2023

    

2022

Land

$

6,488,400

$

6,488,400

Buildings

 

26,044,551

 

23,280,880

Plant and equipment

 

66,000,977

 

64,532,994

Distribution system

 

39,546,175

 

39,544,395

Office furniture, fixtures and equipment

 

3,338,760

 

3,109,546

Vehicles

 

3,433,561

 

2,525,576

Leasehold improvements

 

306,545

 

287,980

Lab equipment

 

12,456

 

12,456

 

145,171,425

 

139,782,227

Less accumulated depreciation

 

89,288,904

 

87,252,682

Property, plant and equipment, net

$

55,882,521

$

52,529,545

Construction in progress

$

495,471

$

3,705,681

As of December 31, 2023, the Company had outstanding capital commitments of approximately $455,000. The Company maintains insurance for loss or damage to all fixed assets that it deems susceptible to loss. During the years ended December 31, 2023 and 2022, $7,093,158 and $297,723, respectively, of construction in progress was placed in service. Depreciation expense was $5,823,008 and $5,425,177 for the years ended December 31, 2023 and 2022, respectively.

8. Discontinued operations – Mexico project development

In 2010, the Company began the pursuit, through its Netherlands subsidiary, Consolidated Water Cooperatief, U.A. (“CW-Cooperatief”), and its Mexico subsidiary, N.S.C. Agua, S.A. de C.V. (“NSC”), of a project (the “Project”) 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.

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’s plant was to be constructed.

Following an assessment by the State of Baja, California (the “State”) 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 “Consortium”) comprised of NSC, Suez Medio Ambiente México, S.A. de C.V. (“Suez MA”), a subsidiary of SUEZ International, S.A.S., and NuWater S.A.P.I. de C.V. (“NuWater”) 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.

In August 2016, NSC and NuWater incorporated a new company under the name Aguas de Rosarito S.A.P.I. de C.V. (“AdR”) 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.

57

On August 22, 2016, the Public Private Partnership Agreement for the Project (the “APP Contract”) was executed between AdR, the State Water Commission of Baja California (“CEA”), and the Government of Baja California, as represented by the Secretary of Planning and Finance and the Public Utilities Commission of Tijuana (“CESPT”). 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 public 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 January 2025. 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, 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.

On June 29, 2020, AdR received a letter (the “Letter”) 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 “Project Works” (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 required that 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 amparo 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 20 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 20-day 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 formal response from CEA or CESPT to its submission of non-recoverable expenses.

The Company believes CW-Cooperatief, as a Netherlands company, has certain rights relating to its investments in NSC and AdR under the Agreement on Promotion, Encouragement and Reciprocal Protection of Investments between the Kingdom of the Netherlands and the United Mexican States entered into force as of October 1, 1999 (the “Treaty”). On April 16, 2021, CW-Cooperatief submitted a letter to the President of Mexico and other Mexican federal government officials alleging that the State’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 invited Mexico to seek a resolution of this investment dispute through consultation and negotiation, but stated that if the dispute cannot be resolved in this manner, CW-Cooperatief would 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’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’s investment dispute.

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.

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 the Company has incurred and will continue to incur legal and other arbitration-related expenses that are material to its consolidated results of operations and cash flows.

58

During July 2022, the State initiated discussions with the Company to potentially resolve the issues related to the cancellation by the government of the Rosarito desalination plant contract as well as potentially addressing the State’s acute water shortage issues. The Company cannot presently determine the outcome of the discussions and the Company has not terminated its efforts to obtain relief through the international arbitration process as a result of these discussions.

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.

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 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 classified as discontinued operations in the accompanying consolidated financial statements.

The Company’s net losses from discontinued operations for the years ended December 31, 2023 and 2022 were ($1,086,744) and ($2,371,049), respectively.

Summarized financial information for the discontinued Mexico project development operation is as follows:

December 31, 

2023

2022

    

Cash

   

$

91,283

   

$

442,252

Accounts receivable

12,675

Prepaid expenses and other current assets

120,234

76,553

Land

 

21,126,898

 

21,126,898

Other assets

 

2,390

 

2,390

Total assets of discontinued operations

$

21,340,805

$

21,660,768

 

  

 

  

Total liabilities of discontinued operations

$

364,665

$

389,884

Year Ended December 31, 

2023

    

2022

Revenue

    

$

    

$

Loss from discontinued operations

$

1,086,744

$

2,371,049

Depreciation expense

$

$

Mexico Project litigation

a)EWG request of precautionary measures

In January 2018, EWG Water LLC (“EWG”) initiated an ordinary mercantile claim against, among others, N.S.C. Agua, S.A. de C.V. (“NSC”) and Consolidated Water Cooperatief, U.A. (“CW-Cooperatief”) (with Aguas de Rosarito S.A.P.I. de C.V. (“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 “Tenth Civil Judge”).

In such claim, EWG challenged, among other things, the transactions contemplated under a certain option agreement (entered into in 2012), and therefore, the capital investment transactions occurring in May 2013 that increased the ownership interest of CW-Cooperatief in NSC to 99.99%. 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. Within the above-mentioned claim, the Tenth Civil Judge granted EWG certain preliminary measures against NSC, which were later overturned by an Upper Court.

59

In July 2023, EWG filed a motion before a local court in Playas de Rosarito, Baja California (the “Rosarito Court”) to obtain precautionary measures consisting of the securing of assets owned by NSC (particularly real estate), as a procedure prior to the commencement of an arbitration that allegedly would be initiated by EWG against NSC to claim the payment of an indemnification for damages derived from a so-called simulation of legal acts. In the opinion of the Rosarito Court, such motion did not require notification to NSC or the presentation of counterarguments by NSC to the motion prior to securing the assets of NSC.

On July 28, 2023, the Rosarito Court issued a resolution in which it: (i) granted the precautionary measures requested by EWG, subject to the posting of a bond in the amount of MXN$1,500,000 (One Million Five Hundred Thousand Mexican Pesos), and (ii) ordered that once the precautionary measures were executed, EWG would have three business days counted as from the posting of the bond, to initiate and prove to the Rosarito Court that it initiated the arbitration. To the Company’s knowledge EWG has not posted the bond. Consequently, NSC has not been summoned to an arbitration procedure.

As EWG has apparently not posted the bond set by the Rosarito Court (i) the precautionary measures have not been enforced, (ii) no securing or attachment has been registered against the real estate of NSC; and (iii) NSC has not been formally summoned to this procedure. As stated previously, NSC is unaware of any arbitration commenced by EWG regarding this matter.

b)NSC amparo lawsuit

On August 16, 2023, NSC filed an amparo suit (i.e. application for constitutional relief) before the Eleventh Federal District Court in Tijuana (“Federal District Court in Tijuana”) against the precautionary measures granted to EWG by the Rosarito Court.

In its amparo suit, NSC also requested the Federal District Court in Tijuana to grant an order to put on hold said precautionary measures. A preliminary order to stay was granted by the Federal District Court in Tijuana, followed by a definitive injunction, subject to the posting of a guarantee. NSC has submitted the guarantee to the court.

NSC subsequently filed an extension of the amparo suit introducing new arguments aiming to strengthen NSC´s position. The amparo extension was admitted through a resolution published on November 7, 2023.

The Federal District Court in Tijuana has not been able to summon EWG on this amparo suit, as it has not been able to determine nor obtain information on an address where EWG can be summoned. As such, the Federal District Court in Tijuana has requested various authorities to provide information on any domicile where EWG can be summoned.

The responses of some authorities are in process of being received by the Federal District Court in Tijuana. NSC is waiting until all the authorities provide their official response to determine if there is a viable alternative for summoning EWG.

NSC offered certain evidence consisting of the docket of amparo file number 74/2020, which was processed by the Twelfth Civil District Court in Tijuana. The Amparo Law provides that any documentary evidence offered by the parties shall be issued without any cost. Therefore, NSC requested the Court to grant the expedition of said copies for free.

However, this request was denied by the Federal District Court in Tijuana. Therefore, NSC filed an appeal for review against said decision, which was admitted by the Federal District Court in Tijuana and sent to the Second Collegiate Circuit Court in Tijuana, acting as Court of Appeals, which confirmed the admission of the appeal remedy through a resolution published on January 26, 2024. The judgment is still pending resolution.

The Company cannot presently determine what impact the resolution of this matter may have on its consolidated financial statements.

9. Intangible assets

The Company’s purchase transactions for Aerex and PERC identified certain intangible assets. The remaining intangible assets and their respective useful lives are as follows: trade names (15 years) and facility management contracts (6 years).

60

Effective October 2023, the Company purchased a 100% ownership interest in REC. The purchase transaction identified certain intangible assets with a fair value of $1,108,390 and useful lives as follows: non-compete (5 years), trade name (15 years) and customer relationships (15 years).

The costs and accumulated amortization for these assets were as follows:

December 31, 

    

2023

    

2022

Cost

 

  

 

  

Non-compete agreements

$

268,590

$

Trade names

 

3,096,900

 

2,700,000

Customer relationships

442,900

Facility management contracts

 

2,200,000

 

2,200,000

 

6,008,390

 

4,900,000

Accumulated amortization

 

 

  

Non-compete agreements

 

(13,430)

 

Trade names

 

(1,106,615)

 

(920,000)

Customer relationships

(7,382)

Facility management contracts

 

(1,527,778)

 

(1,161,112)

 

(2,655,205)

 

(2,081,112)

Intangible assets, net

$

3,353,185

$

2,818,888

Amortization of intangible assets for each of the next five years and thereafter is expected to be as follows:

2024

    

$

656,371

2025

 

595,260

2026

 

289,705

2027

 

289,705

2028

 

276,275

Thereafter

 

1,245,869

$

3,353,185

Amortization expense was $574,093 and $582,778 for the years ended December 31, 2023 and 2022, respectively.

10. Leases

The Company’s leases consist primarily of leases for office and warehouse space. 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’s current leases do not provide a readily determinable implicit rate. Therefore, the Company’s incremental borrowing rate is estimated to discount the lease payments based on information available at the lease commencement.

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.

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.

61

Lease assets and liabilities

The following table presents the lease-related assets and liabilities and their respective classification on the consolidated balance sheets:

    

December 31, 

December 31, 

2023

2022

ASSETS

 

  

Current

 

  

  

Prepaid expenses and other current assets

$

110,541

$

35,624

Current assets of discontinued operations

7,979

Noncurrent

 

 

Operating lease right-of-use assets

 

2,135,446

 

2,058,384

Total lease right-of-use assets

$

2,245,987

$

2,101,987

LIABILITIES

    

  

 

  

Current

 

  

  

Current maturities of operating leases

$

456,865

$

546,851

Current liabilities of discontinued operations

7,361

Noncurrent

 

 

Noncurrent operating leases

1,827,302

1,590,542

Total lease liabilities

$

2,284,167

$

2,144,754

Weighted average remaining lease term:

 

  

 

  

Operating leases

 

6.1 years

 

6.6 years

Operating leases - discontinued operations

0.0 years

0.8 years

 

 

Weighted average discount rate:

 

 

Operating leases

 

5.67%

 

5.11%

Operating leases - discontinued operations

0.00%

4.96%

The components of lease costs were as follows:

    

    

Year Ended December 31, 

2023

2022

Operating lease costs

$

751,261

$

692,404

Short-term lease costs

 

217,640

100,975

Lease costs - discontinued operations

45,979

40,021

Total lease costs

$

1,014,880

$

833,400

Supplemental cash flow information related to leases is as follows:

    

Year Ended December 31, 

2023

2022

Cash paid for amounts included in measurement of liabilities:

 

  

Operating cash outflows for operating leases

$

760,847

$

742,696

Operating cash outflows for operating leases - discontinued operations

11,337

9,590

62

Future lease payments relating to the Company's operating lease liabilities from continuing operations as of December 31, 2023 are as follows:

Years ending December 31, 

    

Total

2024

$

580,780

2025

 

462,990

2026

 

379,019

2027

 

336,597

2028

341,687

Thereafter

 

639,928

Total future lease payments

 

2,741,001

Less: imputed interest

 

(456,834)

Total lease obligations

 

2,284,167

Less: current obligations

 

(456,865)

Noncurrent lease obligations

$

1,827,302

11. Income taxes

The components of income before income taxes for the years ended December 31, 2023 and 2022 are as follows:

Year Ended December 31, 

    

2023

    

2022

Foreign (not subject to income taxes)

$

10,002,233

$

6,958,583

Mexico

 

(742,367)

 

(987,279)

United States

 

27,649,330

 

1,394,642

 

36,909,196

 

7,365,946

Discontinued operations

 

1,086,744

 

2,371,049

$

37,995,940

$

9,736,995

The Company’s provision for (benefit from) income taxes for the years ended December 31, 2023 and 2022, which related to U.S. operations, consisted of the following:

Year Ended December 31, 

    

2023

    

2022

Current:

Federal

$

5,611,360

$

430,116

State

1,663,653

(29,157)

Foreign

Total current income tax expense (benefit)

7,275,013

400,959

Deferred:

 

 

Federal

(276,070)

(184,469)

State

(248,929)

180,249

Foreign

Total deferred income tax expense (benefit)

(524,999)

(4,220)

Total provision for (benefit from) income taxes

$

6,750,014

$

396,739

63

A reconciliation of the U.S. statutory federal tax rate to the effective rate for the years ended December 31, 2023 and 2022 is as follows:

Year Ended December 31, 

 

    

2023

    

2022

 

U.S. statutory federal rate

21.00

%  

21.00

%

State taxes, net of federal effect

 

2.88

%  

8.88

%

Foreign rate differential

 

(5.71)

%  

(25.57)

%

Research and development tax credit

 

%  

(1.92)

%

Permanent items

 

(0.32)

%  

(0.70)

%

Change in valuation allowance

 

(0.08)

%  

2.38

%

 

17.77

%  

4.07

%

The tax effects of significant items comprising the Company’s net long-term deferred tax liability as of December 31, 2023 and 2022 were as follows:

December 31, 

    

2023

    

2022

Continuing Operations

Deferred tax assets:

 

  

 

  

Research and development credit carryforwards

$

$

58,069

Net operating loss carryforwards

130,911

443,076

Accruals and reserves

146,057

82,503

Operating lease liabilities

501,397

412,840

Capitalized research expenditures

326,178

Others

29,094

Valuation allowances

 

 

(29,036)

 

1,133,637

 

967,452

Deferred tax liabilities:

 

  

 

  

Property and equipment

 

325,473

 

293,195

Intangible assets

 

847,450

 

821,723

Operating lease right-of-use assets

 

491,494

 

412,840

 

1,664,417

 

1,527,758

Net deferred tax liabilities

$

(530,780)

$

(560,306)

Discontinued Operations

Deferred tax assets:

Operating loss carryforwards - Mexico

$

5,844,847

$

5,378,177

Land basis difference - Mexico

2,818,663

2,163,681

Start-up costs - Mexico

7,015,484

4,274,858

Valuation allowances

(15,678,994)

(11,816,716)

$

$

As of December 31, 2023, continuing operations has a federal net loss carryforward of $0.6 million and a state net loss carryforward of $0.3 million, both of which have an indefinite expiration date. Discontinued operations has a net loss carryforward of $19.5 million that will begin to expire, if unused, in various amounts between 2024 and 2033.

12. Earnings per share

Earnings per share (“EPS”) is computed on a basic and diluted basis. Basic EPS is computed by dividing net income (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

64

common shares outstanding during the reporting period and, if dilutive, the effect of stock options as computed under the treasury stock method.

The following summarizes information related to the computation of basic and diluted EPS:

 

Year Ended December 31, 

 

2023

    

2022

Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders

$

30,672,135

$

8,227,343

Less: preferred stock dividends

 

(15,513)

 

(11,532)

Net income from continuing operations available to common shares in the determination of basic earnings per common share

 

30,656,622

 

8,215,811

Loss from discontinued operations

 

(1,086,744)

 

(2,371,049)

Net income available to common shares in the determination of basic earnings per common share

$

29,569,878

$

5,844,762

Weighted average number of common shares in the determination of basic earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders

 

15,739,056

 

15,290,509

Plus:

 

 

Weighted average number of preferred shares outstanding during the period

 

39,885

 

31,885

Potential dilutive effect of unexercised options and unvested stock grants

 

86,956

 

79,259

Weighted average number of shares used for determining diluted earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders

 

15,865,897

 

15,401,653

13. Dividends

Interim dividends declared on Class A common stock and redeemable preferred stock for each quarter of the respective years ended December 31, 2023 and 2022 were as follows:

    

2023

    

2022

First Quarter

$

0.085

$

0.085

Second Quarter

 

0.085

 

0.085

Third Quarter

 

0.095

 

0.085

Fourth Quarter

 

0.095

 

0.085

$

0.36

$

0.34

14. Segment information

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 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 segment and does not allocate any of these non-direct expenses to its other three business segments.

The accounting policies of the segments are consistent with those described in Note 2. The Company evaluates each segment’s performance based upon its income (or loss) from operations. All intercompany transactions are eliminated for segment presentation purposes.

65

The Company’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.

 

Year Ended December 31, 2023

 

Retail

    

Bulk

    

Services

    

Manufacturing

    

Total

Revenue

$

30,158,051

$

34,595,058

$

97,966,650

$

17,491,474

    

$

180,211,233

Cost of revenue

 

13,891,229

 

24,128,132

 

66,797,762

 

13,467,005

 

118,284,128

Gross profit

 

16,266,822

 

10,466,926

 

31,168,888

 

4,024,469

 

61,927,105

General and administrative expenses

 

16,905,010

 

1,737,264

 

4,271,808

 

1,838,284

 

24,752,366

Gain (loss) on asset dispositions and impairments, net

 

(22,065)

 

12,720

 

 

2,233

 

(7,112)

Income (loss) from operations

$

(660,253)

$

8,742,382

$

26,897,080

$

2,188,418

 

37,167,627

Other income, net

 

  

 

  

 

 

  

828,313

Income before income taxes

 

  

 

  

 

  

 

  

 

37,995,940

Provision for income taxes

 

  

 

  

 

  

 

  

 

6,750,014

Net income from continuing operations

 

  

 

  

 

  

 

  

 

31,245,926

Income from continuing operations attributable to non-controlling interests

 

  

 

  

 

  

 

  

 

573,791

Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders

 

  

 

  

 

  

 

  

 

30,672,135

Loss from discontinued operations

 

  

 

  

 

  

 

  

 

(1,086,744)

Net income attributable to Consolidated Water Co. Ltd. stockholders

 

  

 

  

 

  

 

  

$

29,585,391

Depreciation and amortization expenses for the year ended December 31, 2023 for the retail, bulk, services and manufacturing segments were $2,484,845, $3,032,902, $785,347 and $273,360, respectively.

 

As of December 31, 2023

 

Retail

    

Bulk

    

Services

    

Manufacturing

    

Total

Accounts receivable, net

$

3,425,948

$

26,965,126

$

6,802,780

$

1,033,037

$

38,226,891

Inventory, current and non-current

$

3,041,460

$

4,858,324

$

55,272

$

3,135,357

$

11,090,413

Contract assets

$

$

$

17,715,872

$

3,837,185

$

21,553,057

Property, plant and equipment, net

$

32,809,487

$

20,370,056

$

1,143,884

$

1,559,094

$

55,882,521

Construction in progress

$

380,436

$

$

$

115,035

$

495,471

Intangibles, net

$

$

$

2,692,074

$

661,111

$

3,353,185

Goodwill

$

1,170,511

$

1,948,875

$

7,756,807

$

1,985,211

$

12,861,404

Total segment assets

$

58,774,647

$

63,956,725

$

58,476,773

$

15,888,642

$

197,096,787

Assets of discontinued operations

$

21,340,805

Total assets

$

218,437,592

66

 

Year Ended December 31, 2022

 

Retail

    

Bulk

    

Services

    

Manufacturing

    

Total

Revenue

$

25,954,013

$

32,991,066

$

28,835,428

$

6,324,465

$

94,104,972

Cost of revenue

 

12,548,763

 

23,032,212

 

22,973,634

 

5,195,240

 

63,749,849

Gross profit

 

13,405,250

 

9,958,854

 

5,861,794

 

1,129,225

 

30,355,123

General and administrative expenses

 

14,552,866

 

1,570,732

 

3,461,294

 

1,485,342

 

21,070,234

Gain (loss) on asset dispositions and impairments, net

 

(39,397)

 

5,607

 

23,717

 

(2,631)

 

(12,704)

Income (loss) from operations

$

(1,187,013)

$

8,393,729

$

2,424,217

$

(358,748)

 

9,272,185

Other income, net

 

  

 

  

 

  

 

  

 

464,810

Income before income taxes

 

  

 

  

 

  

 

  

 

9,736,995

Provision for income taxes

396,739

Net income from continuing operations

 

  

 

  

 

  

 

  

 

9,340,256

Income from continuing operations attributable to non-controlling interests

 

  

 

  

 

  

 

  

 

1,112,913

Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders

 

  

 

  

 

  

 

  

 

8,227,343

Loss from discontinued operations

 

  

 

  

 

  

 

  

 

(2,371,049)

Net income attributable to Consolidated Water Co. Ltd. stockholders

 

  

 

  

 

  

 

  

$

5,856,294

Depreciation and amortization expenses for the year ended December 31, 2022 for the retail, bulk, services and manufacturing segments were $2,391,603, $2,836,794, $674,508 and $284,403, respectively.

 

As of December 31, 2022

 

Retail

    

Bulk

    

Services

    

Manufacturing

    

Total

Accounts receivable, net

$

2,953,927

$

16,554,940

$

5,838,721

$

1,698,594

$

27,046,182

Inventory, current and non-current

$

2,759,659

$

4,037,684

$

$

3,481,486

$

10,278,829

Contract assets

$

$

$

1,249,069

$

1,664,653

$

2,913,722

Property, plant and equipment, net

$

27,697,490

$

22,510,658

$

759,409

$

1,561,988

$

52,529,545

Construction in progress

$

3,643,889

$

$

$

61,792

$

3,705,681

Intangibles, net

$

$

$

2,064,444

$

754,444

$

2,818,888

Goodwill

$

1,170,511

$

1,948,875

$

5,320,416

$

1,985,211

$

10,425,013

Total segment assets

$

65,853,789

$

56,118,243

$

36,319,078

$

13,054,971

$

171,346,081

Assets of discontinued operations

 

 

 

 

$

21,660,768

Total assets

 

 

 

 

$

193,006,849

Revenue earned by major geographic region was:

Year ended December 31, 

    

2023

    

2022

Cayman Islands

$

41,728,340

$

30,375,985

The Bahamas

 

31,221,633

 

29,943,615

United States

 

106,768,621

 

33,338,466

Revenue earned from management services agreement with OC-BVI

 

492,639

 

446,906

$

180,211,233

$

94,104,972

67

Revenue earned from major customers was:

Year ended December 31, 

    

2023

    

2022

Revenue earned from the WSC

$

31,221,633

$

29,943,615

Percentage of consolidated revenue earned from the WSC

 

17%

 

32%

Revenue earned from one service segment customer

$

64,149,170

$

11,805,752

Percentage of consolidated revenue earned from the one service segment customer

 

36%

 

13%

Property, plant and equipment, net by major geographic region was:

December 31, 

    

2023

    

2022

Cayman Islands

$

32,902,949

$

28,068,156

The Bahamas

 

20,039,049

 

22,031,690

United States

 

2,940,523

 

2,429,699

$

55,882,521

$

52,529,545

15. Cost of revenue and general and administrative expenses

Year Ended December 31, 

    

2023

    

2022

Cost of revenue consist of:

Subcontractor and other project costs

$

64,806,072

$

17,847,124

Employee costs

 

18,935,014

 

14,036,117

Electricity

 

9,502,666

 

6,975,129

Fuel oil

 

9,024,836

 

10,203,690

Depreciation

 

5,632,998

 

5,261,463

Maintenance

 

2,992,872

 

2,786,258

Insurance

 

2,061,497

 

1,782,333

Retail license royalties

 

1,842,924

 

1,590,250

Other

 

3,485,249

 

3,267,485

$

118,284,128

$

63,749,849

Year Ended December 31, 

2023

2022

General and administrative expenses consist of:

 

  

 

  

Employee costs

$

13,690,152

$

11,209,635

Professional fees

 

2,012,092

 

1,760,279

Insurance

 

1,903,856

 

2,067,625

Directors’ fees and expenses

 

980,759

 

991,592

Office rent

882,686

793,380

Amortization of intangible assets

 

574,093

 

582,778

Investor relations

534,979

354,158

Business development expenses

578,086

395,660

Provision for credit losses

408,489

Computer supplies, software licenses

387,335

322,310

Bank charges

341,263

490,237

Depreciation

 

190,010

 

163,714

Other

 

2,268,566

 

1,938,866

$

24,752,366

$

21,070,234

68

16. Stock-based compensation

The Company has the following stock compensation plans that form part of its employees’ and Directors’ remuneration:

Employee Share Incentive Plan (Preferred Stock)

Employees (i.e., other than Directors and Officers), after four consecutive years of employment, become eligible to receive shares of the Company’s preferred stock for $nil consideration under the Company’s Employee Share Incentive Plan. Once an individual becomes eligible for this plan, they are awarded shares of preferred stock in the month of June following their date of eligibility for the plan (the “grant date”) and in June of each subsequent year of the individual's employment for as long as the individual remains employed with the Company. If the employee remains with the Company through the fourth anniversary of a grant date, the preferred stock can be converted into shares of the Company’s common stock on a one for one basis. In addition, at the time the preferred stock is granted, the employee receives options to purchase an equal number of shares of preferred stock at a discount to the average trading price of the Company’s common stock for the first seven days of the October 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 date. Each employee’s option to purchase shares of preferred stock must be exercised within 30 days of the grant date, which is the 90th day after the date of the independent registered public accountants’ audit opinion on the Company’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 years ended December 31, 2023 and 2022 totaled 13,309 and 9,295, respectively, and an equal number of preferred stock options were granted in each of these years.

Employee Share Option Plan (Common Stock Options)

The Company has an employee stock option plan for four long-serving employees of the Company. Under the plan, these employees are granted in each calendar 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’s Annual Shareholder Meeting. The number of options each employee is granted is equal to five times the sum of (i) the number of shares of preferred stock that employee receives for $nil consideration and (ii) the number of preferred stock options that employee exercises in that given year. Options may be exercised during the period commencing on the fourth anniversary of the grant date and ending on the 30th day after the fourth anniversary of the grant date. Options granted under this plan during the years ended December 31, 2023 and 2022 totaled 3,010 and 3,665, respectively.

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’s common stock. 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.

2008 Equity Incentive Plan

On May 14, 2008, the Company’s stockholders approved the 2008 Equity Incentive Plan (the “2008 Plan”) and reserved 1,500,000 shares of the Company’s Class 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.

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 $703,289 and $386,260 for the years ended December 31, 2023 and 2022, respectively, and is included in general and administrative expenses in the accompanying consolidated statements of income.

69

The significant weighted average assumptions for the years ended December 31, 2023 and 2022 were as follows:

    

2023

    

2022

 

Risk free interest rate

 

5.06

%  

1.64

%

Expected option life (years)

 

1.0

 

1.2

Expected volatility

 

42.42

%  

47.15

%

Expected dividend yield

 

1.60

%  

2.35

%

A summary of the Company’s stock option activity for the year ended December 31, 2023 is as follows:

Weighted

Weighted

Average

Average

Remaining

Aggregate

Exercise

Contractual

Intrinsic

    

Options

    

Price

    

Life (Years)

    

Value (1)

Outstanding at beginning of period

 

11,740

$

13.59

 

  

 

  

Granted

 

16,319

 

13.62

 

  

 

  

Exercised

 

(8,231)

 

12.12

 

  

 

  

Forfeited/expired

 

(7,653)

 

11.28

 

  

 

  

Outstanding as of December 31, 2023

 

12,175

$

16.08

 

2.29

years  

$

237,705

Exercisable as of December 31, 2023

 

$

 

years  

$

(1)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 $35.60 on the Nasdaq Global Select Market on December 31, 2023, exceeds the exercise price of the option.

As of December 31, 2023, 12,175 non-vested options were outstanding, with weighted average exercise price of $16.08, and average remaining contractual life of 2.29 years. The total remaining unrecognized compensation costs related to unvested stock-based arrangements were $14,867 as of December 31, 2023 and are expected to be recognized over a weighted average period of 2.29 years.

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, 2023 and 2022:

    

2023

    

2022

Options granted with an exercise price below market price on the date of grant:

 

  

 

  

Employees — preferred stock

$

12.21

$

5.58

Overall weighted average

 

12.21

 

5.58

Options granted with an exercise price at market price on the date of grant:

 

  

 

  

Management employees

$

$

Employees — common stock

 

8.29

 

4.32

Overall weighted average

 

8.29

 

4.32

Options granted with an exercise price above market price on the date of grant:

 

  

 

  

Management employees

$

$

Employees — preferred stock

 

 

Overall weighted average

 

 

Total intrinsic value of options exercised

$

104,559

$

17,158

70

Senior Management Long-Term Incentive Compensation

The Board of Directors has established the long-term incentive compensation for the Company’s senior management to better align the interests of its senior management with those of its shareholders. The 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.

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 year over a three-year period. The number of non-performance-based stock grant rights issued on January 3, 2023 and 2022 were 29,508 and 32,265, respectively. These stock grant rights vest in one-third increments over the three-year periods ending December 31, 2025 and 2024, respectively. The total number of vested shares issued under prior years’ non-performance stock grant rights totaled 25,986 and 23,411 in the years ended December 31, 2023 and 2022, respectively. For the years ended December 31, 2023 and 2022, the Company recognized $366,058 and $325,270 in stock-based compensation expense, respectively, related to the incremental vesting of the non-performance stock grant rights.

The performance-based grants may be earned at the end of each year based upon the Company's three-year cumulative financial performance relative to three-year cumulative financial performance targets. The Company recognized $522,925 and $335,964 in stock-based compensation for the year ended December 31, 2023 and 2022, respectively, related to these grants.

A total of 26,742 stock grant rights were earned as of December 31, 2023 based upon the Company’s actual financial performance relative to the cumulative financial performance targets for the three-year period ended December 31, 2023 The shares associated with these grants will be issued in 2024.

A total of 13,797 stock grant rights were earned as of December 31, 2022 based upon the Company’s actual financial performance relative to the cumulative financial performance targets for the three-year period ended December 31, 2022. The shares associated with these grants were issued in 2023.

Non-Executive Directors’ Share Plan

This stock grant plan provides part of the Directors’ 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’s common stock on October 1 of the year preceding the grant. Common stock granted under this plan during the years ended December 31, 2023 and 2022 totaled 22,831 and 30,767 shares, respectively. The Company recognized stock-based compensation for these share grants of $341,394 and $369,678 for the years ended December 31, 2023 and 2022, respectively.

17. Retirement benefits

Retirement plans are offered to all employees in California, Florida, Colorado, the Cayman Islands and The Bahamas. The plans are administered by third parties and are defined contribution plans pursuant to which the Company matches participating employees’ contributions up to certain amounts. The Company’s expense for these plans was $771,616 and $624,798 for the years ended December 31, 2023 and 2022, respectively.

18. Financial instruments

Credit risk:

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’ accounts that are more than 45 days overdue. The Company’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 a material allowance for these receivables.

71

Interest rate risk:

The Company is not subject to significant interest rate risk arising from fluctuations in interest rates.

Foreign exchange risk:

All relevant foreign currencies other than the Mexican peso and the euro have been fixed to the dollar for more than 20 years 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’s consolidated results of operations could be adversely affected.

Fair values:

As of December 31, 2023 and 2022, 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.

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’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:

Level 1 - Quoted prices in active markets for identical assets or liabilities.

Level 2 - Inputs other than Level 1 that are observable, either directly or indirectly, such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities.

Level 3 - Unobservable inputs that are supported by little or no market activity and that are significant to the fair value of the assets or liabilities.

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.

As of December 31, 2023 and 2022, the Company does not have assets and liabilities measured at fair value to present in the fair value hierarchy.

19. Commitments and contingencies

Commitments

The Company has entered into employment agreements with certain executives, which expire through December 31, 2026 and provide for, among other things, base annual salaries in an aggregate amount of approximately $5.5 million, performance bonuses and various employee benefits.

The Company has purchase obligations totaling approximately $16.6 million through December 31, 2024.

72

Contingencies

Cayman Water

The Company sells water through its Cayman Water retail operations under a license issued in July 1990 by the Cayman Islands government (the “1990 license”) that granted Cayman Water the exclusive right to provide potable water to customers within its licensed service area. Although the 1990 license has not been 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 2023 and 2022, the Company generated approximately 17% and 27%, respectively, of its consolidated revenue and 26% and 44%, respectively, of its consolidated gross profit from the retail water operations conducted under the 1990 license.

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 of 7.5% of the revenue that Cayman Water collects as required under the 1990 license.

In October 2016, the Government of the Cayman Islands passed legislation which created a new utilities regulation and competition office (“OfReg”). 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 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 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 2017. The Company began license negotiations with OfReg in July 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.

The Company is presently unable to determine what impact the resolution of its retail license negotiations will have on its consolidated 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’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’s consolidated financial condition and results of operations.

CW-Bahamas

CW-Bahamas’ accounts receivable balances (which include accrued interest) due from the WSC amounted to $26.9 million and $16.3 million as of December 31, 2023 and 2022. Approximately 80% and 65% of the accounts receivable balances were delinquent as of those dates, respectively.

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’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 not provided for a material allowance for credit losses for its accounts receivable from the WSC as of December 31, 2023.

73

CW-Bahamas held discussions with the WSC in March 2024 during which the WSC stated that the Government intends to substantially reduce CW-Bahamas’ accounts receivable from the WSC over the course of 2024.

In a report dated October 6, 2022, Moody’s Investor Services (“Moody’s”) downgraded the Government of The Bahamas’ long-term issuer and senior unsecured ratings to B1 from Ba3. Moody’s also lowered The Bahamas’ local currency ceiling to Baa3 from Baa2 and its foreign currency ceiling to Ba1 from Baa3. Moody’s iterated these ratings in April and October 2023, noting that such ratings are “stable.”

If CW-Bahamas is unable to collect a sufficient portion of its delinquent accounts receivable, one or more of the following events may occur: (i) CW-Bahamas may not have sufficient liquidity to meet its obligations; (ii) the Company may be required to cease the recognition of revenue on CW-Bahamas’ water supply agreements with the WSC; and (iii) the Company may be required to provide an additional allowance for credit losses for CW-Bahamas’ accounts receivable. Any of these events could have a material adverse impact on the Company’s consolidated financial condition, results of operations, and cash flows.

20. Related party transactions

The Company, through PERC, purchased engineering and technology support services from various companies formerly affiliated with PERC, as a minority shareholder in these companies was also a minority shareholder of PERC. On January 4, 2023, as a result of CW-Holdings' exercise of a call option in October 2022, CW-Holdings purchased the remaining 39% ownership interest in PERC. After giving effect to this purchase, CW-Holdings owns 100% of the outstanding capital stock of PERC and, consequently, transactions with the formerly affiliated companies no longer constitute related party transactions. During the year ended December 31, 2022, the Company made total purchases of services from these companies of approximately $2,695,000. These total purchases are included in the Company’s cost of revenue in the accompanying consolidated statements of income.

PERC entered into a sublease agreement with one of these formerly affiliated companies that commenced on March 14, 2021 and ended August 31, 2021. This lease was extended on a month-to-month basis subsequent to August 31, 2021. During the year ended December 31, 2022, the Company recognized approximately $97,000 of expense related to this lease. This lease expense is included in the Company's general and administrative expenses in the accompanying consolidated statements of income.

The total amount of accounts payable outstanding to these companies as of December 31, 2022, was approximately $404,000.

21. Supplemental disclosure of cash flow information

Year Ended December 31, 

    

2023

    

2022

Interest paid in cash

$

21,417

$

14,797

Income taxes paid in cash

$

4,920,912

$

211,000

Non-cash transactions:

 

 

  

Issuance of 13,309 and 9,295, respectively, shares of redeemable preferred stock for services rendered

$

323,275

$

133,197

Issuance of 68,864 and 72,597, respectively, shares of common stock for services rendered

$

1,015,177

$

877,298

Conversion (on a one-to-one basis) of 8,848 and 6,585, respectively, shares of redeemable preferred stock to common stock

$

5,309

$

3,951

Dividends declared but not paid

$

1,502,506

$

1,305,367

Issuance of 368,383 and 0, respectively, shares of common stock for the purchase of non-controlling interest in PERC

$

5,359,973

$

Transfers from inventory to property, plant and equipment and construction in progress

$

317,853

$

346,024

Transfers from construction in progress to property, plant and equipment

$

7,093,158

$

297,723

Right-of-use assets obtained in exchange for new operating lease liabilities

$

745,078

$

Purchase of equipment through issuance of long-term debt

$

$

188,645

74

22. Impact of recent accounting standards

Adoption of new accounting standards:

Financial Accounting Standard Update (“ASU”) 2016-13, Measurement of Credit Losses on Financial Instruments, and related amendments, introduces new guidance which makes substantive changes to the accounting for credit losses. This guidance introduces the current expected credit losses (“CECL”) model which applies to financial assets subject to credit losses and measured at amortized cost, as well as certain off-balance sheet credit exposures. The CECL model requires an entity to estimate credit losses expected over the life of an exposure, considering information about historical events, current conditions, and reasonable and supportable forecasts and is generally expected to result in earlier recognition of credit losses. The Company adopted this guidance as of January 1, 2023 using the modified retrospective approach. The impact of this adoption was not material to the Company’s consolidated financial statements.  

Effect of newly issued but not yet effective accounting standards:

In November 2023, the Financial Accounting Standards Board (“FASB”) issued Accounting Standards Update ("ASU") 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures. This ASU updates reportable segment disclosure requirements by requiring disclosures of significant reportable segment expenses that are regularly provided to the Chief Operating Decision Maker (“CODM”) and included within each reported measure of a segment's profit or loss. This ASU also requires disclosure of the title and position of the individual identified as the CODM and an explanation of how the CODM uses the reported measures of a segment’s profit or loss in assessing segment performance and deciding how to allocate resources. The ASU is effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. Early adoption is permitted. The Company is currently evaluating the impact of this guidance.

In December 2023, the FASB issued ASU 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures. The ASU requires disaggregated information about a reporting entity’s effective tax rate reconciliation as well as additional information on income taxes paid. The ASU is effective on a prospective basis for annual periods beginning after December 15, 2024. Early adoption is permitted. The Company is currently evaluating the impact of this guidance.

23. Subsequent events

The Company evaluated subsequent events through the time of the filing of its Annual Report on Form 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.

ITEM 9.

CHANGES IN AND DISAGREEMENTS WITH ACCOUNTANTS ON ACCOUNTING AND FINANCIAL DISCLOSURE

None.

ITEM 9A.

CONTROLS AND PROCEDURES

Disclosure Controls and Procedures

Disclosure controls and procedures are the Company’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 “Exchange Act”) is recorded, processed, summarized and reported within the time periods specified in the SEC’s rules 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

75

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.

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 13a-15(e) and 15d-15(e) 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’s disclosure controls and procedures were effective at the reasonable assurance level.

Internal Control Over Financial Reporting

Management’s Annual Report on Internal Control Over Financial Reporting

MANAGEMENT’S REPORT ON INTERNAL CONTROL OVER FINANCIAL REPORTING

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’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:

pertain to the maintenance of records that in reasonable detail accurately and fairly reflect the transactions and dispositions of the assets of the Company;
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
provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use or disposition of the Company’s assets that could have a material effect on the financial statements.

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.

Management assessed the effectiveness of the Company’s internal control over financial reporting as of December 31, 2023. In making this assessment, management used the criteria set forth by the Committee of Sponsoring Organizations of the Treadway Commission (COSO) in Internal Control-Integrated Framework (2013).

Based on our assessment, management has concluded that, as of December 31, 2023, the Company’s internal control over financial reporting was effective at the reasonable assurance level.

Changes in Internal Control Over Financial Reporting

There were no changes in the Company’s internal control over financial reporting identified in connection with the evaluation of such internal control that occurred during the Company’s last fiscal quarter that have materially affected, or are reasonably likely to materially affect, the Company’s internal control over financial reporting.

76

ITEM 9B.

OTHER INFORMATION

None.

ITEM 9C.

DISCLOSURE REGARDING FOREIGN JURISDICTIONS THAT PREVENT INSPECTIONS

Not applicable.

PART III

ITEM 10.

DIRECTORS, EXECUTIVE OFFICERS AND CORPORATE GOVERNANCE

Information required by this item with respect to our Directors and the nomination process is contained in the proxy statement for our 2024 Annual Meeting of Shareholders to be filed with the SEC (the “Proxy Statement”) under the heading “Proposal 1 - Election of Directors” and is incorporated by reference in this Annual Report.

Information required by this item with respect to our Executive Officers is set forth in the Proxy Statement under the heading “Executive Officers” and is incorporated by reference in this Annual Report.

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 “Proposal 1 - Election of Directors - Committees of the Board of Directors - Audit Committee” and is incorporated by reference in this Annual Report.

To our knowledge, based solely on review of reports required by Section 16(a) of the Exchange Act and written representations from the certain reporting persons, we believe that during the fiscal year ended December 31, 2023, our officers, directors and significant shareholders have timely filed the appropriate form under Section 16(a) of the Exchange Act.

The Board of Directors has adopted a Code of Business Conduct and Ethics (the “Code”) that applies to all of the Company’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 “Proposal 1 - Election of Directors - Governance of the Company” and is incorporated by reference in this Annual Report.

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.

ITEM 11.

EXECUTIVE COMPENSATION

Information required by this item with respect to executive compensation and director compensation is contained in the Proxy Statement under the heading “Executive Compensation” and is incorporated by reference in this Annual Report.

ITEM 12.

SECURITY OWNERSHIP OF CERTAIN BENEFICIAL OWNERS AND MANAGEMENT AND RELATED STOCKHOLDER MATTERS

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 “Security Ownership of Certain Beneficial Owners and Management and Related Shareholders Matters” and is incorporated by reference in this Annual Report.

77

ITEM 13.

CERTAIN RELATIONSHIPS AND RELATED TRANSACTIONS, AND DIRECTOR INDEPENDENCE

Information required by this item with respect to such contractual relationships and director independence is contained in the Proxy Statement under the headings “Executive Compensation - Transactions With Related Persons” and is incorporated by reference in this Annual Report.

ITEM 14.

PRINCIPAL ACCOUNTING FEES AND SERVICES

Information with respect to principal accounting fees and services are contained in the Proxy Statement under the heading “Proposal 4 Ratification of the Selection of Independent Accountants - Principal Accounting Fees and Services” and is incorporated by reference in this Annual Report.

PART IV

ITEM 15.

EXHIBITS, FINANCIAL STATEMENT SCHEDULES

1. Financial Statements

The Consolidated Water Co. Ltd. Financial statements found in ITEM 8. FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA are incorporated herein by reference.

2. Financial Statement Schedules

None.

3. Exhibits

The Exhibits listed in the Exhibit Index immediately preceding the Signatures are filed as part of this Annual Report on Form 10-K.

CONSOLIDATED WATER CO. LTD.

INDEX TO EXHIBITS FILED WITH 10-K

Number

 

Exhibit Description

 

 

 

3.1

    

Amended and Restated Memorandum of Association of Consolidated Water Co. Ltd. dated May 23, 2022 (incorporated by reference to Exhibit 3.1 filed as part of our Form 8-K filed May 27, 2022, Commission File No. 0-25248)

 

 

 

3.2

 

Amended and Restated Articles of Association of Consolidated Water Co. Ltd. dated May 23, 2022 (incorporated by reference to Exhibit 3.2 filed as part of our Form 8-K filed May 27, 2022, Commission File No. 0-25248)

 

 

 

4.1**

 

Description of Securities

 

 

 

10.1.1

 

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)

 

 

 

10.1.2

 

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)

 

 

 

78

Number

 

Exhibit Description

10.1.3

 

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)

 

 

 

10.1.4

 

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)

 

 

 

10.1.5

 

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)

 

 

 

10.1.6

 

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)

 

 

 

10.1.7

 

Amendment to a License to Produce Potable Water dated 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)

 

 

 

10.1.8

 

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)

 

 

 

10.1.9 

    

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) 

10.1.10 

 

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) 

 

 

 

10.1.11

 

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)

 

 

 

10.1.12 

 

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)

 

 

 

10.1.13

 

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)

 

 

 

10.1.14

 

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)

 

 

 

10.2

 

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)

 

 

 

79

Number

 

Exhibit Description

10.3.1*

 

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)

 

 

 

10.3.2*

 

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)

 

 

 

10.3.3*

 

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)

 

 

 

10.4*

 

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)

 

 

 

10.5.1*

 

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)

 

 

 

10.5.2*

 

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) 

 

 

 

10.5.3*

Second Amendment of Engagement Agreement dated September 9, 2022 between Ramjeet Jerrybandan and Consolidated Water Co. Ltd. (incorporated by reference to Exhibit 10.1 filed as part of our Form 8-K filed September 13, 2022, Commission File No. 0-25248)

10.6

 

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)

 

 

 

10.7*

 

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)

 

 

 

10.8*

 

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)

 

 

 

10.9*

 

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)

 

 

 

10.10*

Employee Share Incentive Plan (incorporated by reference to Exhibit 4.3 filled as part of our Registration Statement on Form S-8 dated January 12, 2024, Commission File No. 333-276483)

10.11

 

Water Supply Agreement dated March 5, 2018 between Cayman Water Company Limited and Cayman Shores Development Ltd. (incorporated herein by reference to Exhibit 10.10 filed as a part of our Form 10-K for the fiscal year ended December 31, 2021, Commission File No. 0-25248)

 

 

 

10.12

 

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)

 

 

 

80

Number

 

Exhibit Description

10.13.1†

    

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)

 

 

 

10.13.2†

 

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)

 

 

 

10.13.3†

 

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)

 

 

 

10.14.1 

 

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) 

 

 

 

10.14.2 

 

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) 

10.14.3

 

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)

 

 

 

10.14.4

 

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)

 

 

 

10.15

 

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)

10.16

Letter dated June 29, 2020 from the Director General of the Comisió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)

 

 

 

10.17

Procurement of and Operating Agreement for a Sea Water Desalination Plant at Red Gate Water Works, Grand Cayman, Cayman Islands, using the Reverse Osmosis Process (2021), effective as of May 10, 2022, by and between The Water Authority of the Cayman Islands and Ocean Conversion (Cayman) Limited (incorporated herein by reference to Exhibit 10.1 filed as a part of our Form 10-Q filed November 14, 2022, File No. 0-25248)

10.18

Credit Agreement dated September 16, 2022 between Cayman Water Company Limited and Scotiabank & Trust (Cayman) Ltd. (incorporated by reference to Exhibit 10.1 filed as part of our Form 8-K filed September 20, 2022, Commission File No. 0-25248)

10.19

Letter dated September 16, 2022 from Scotiabank & Trust (Cayman) Ltd. to Cayman Water Company Limited. (incorporated by reference to Exhibit 10.2 filed as part of our Form 8-K filed September 20, 2022, Commission File No. 0-25248)

81

Number

 

Exhibit Description

10.20

Stock Purchase Agreement dated January 4, 2023 among Consolidated Water U.S. Holdings, Inc. and the Sellers. (incorporated by reference to Exhibit 10.2 filed as part of our Form 8-K filed January 9, 2023, Commission File No. 0-25248)

10.21

Agreement dated May 11, 2022 between PERC Water Corporation and Liberty (Litchfield Park Water & Sewer) Corp. (incorporated by reference to Exhibit 10.1 filed as part of our Form 10-Q for the fiscal quarter ended June 30, 2023, Commission File No. 0-25248)

10.22

Service Agreement for the Kalaeloa Seawater Desalination Facility Design, Build, Operate And Maintain Project Oahu, Hawaii dated June 2, 2023 between Kalaeloa Desalco LLC and The Board of Water Supply of the City and County of Honolulu, Hawaii (incorporated by reference to Exhibit 10.1 filed as part of our Form 8-K filed June 6, 2023, Commission File No. 0-25248)

10.23

Guaranty Agreement dated June 2, 2023 from Consolidated Water Co.  Ltd. to The Board of Water Supply of the City and County of Honolulu, Hawaii (incorporated by reference to Exhibit 10.2 filed as part of our Form 8-K filed June 6, 2023, Commission File No. 0-25248)

10.24

Stock Purchase Agreement dated November 2, 2023, but effective October 1, 2023 among PERC Water Corporation and Linda Ramey and Robert W. Ramey (incorporated by reference to Exhibit 10.1 filed as part of our Form 8-K filed November 7, 2023, Commission File No. 0-25248)

19**

Insider Trading and Disclosure of Non-Public Information Policy

21.1**

 

Subsidiaries of the Registrant

 

 

 

23.1**

 

Consent of Marcum LLP - Consolidated Water Co. Ltd.

 

 

 

31.1**

 

Certification by the Chief Executive Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002

 

 

 

31.2**

 

Certification by the Chief Financial Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002

 

 

32.1**

 

Certification by the Chief Executive Officer pursuant to 18 U.S.C. Section 1350, Section 906 of the Sarbanes-Oxley Act of 2002

 

 

 

32.2**

 

Certification by the Chief Financial Officer pursuant to 18 U.S.C. Section 1350, Section 906 of the Sarbanes-Oxley Act of 2002

 

 

 

97**

Incentive Compensation Recoupment Policy

101.INS**

 

XBRL Instance Document - The instance document does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document.

 

 

 

101.SCH**

 

XBRL Taxonomy Extension Schema

 

 

 

101.CAL**

 

XBRL Taxonomy Extension Calculation Linkbase

 

 

 

101.DEF**

 

XBRL Taxonomy Extension Definition Document

 

 

 

101.LAB**

 

XBRL Taxonomy Extension Label Linkbase

 

    

 

82

Number

 

Exhibit Description

101.PRE**

104**

 

XBRL Taxonomy Extension Presentation Linkbase

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.

*   Indicates a management contract or compensatory plan.

** Filed herewith.

†   Portions of these Exhibits have been omitted pursuant to a request for confidential treatment.

83

SIGNATURES

Pursuant to the requirements of Section 13 or 15(d) 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.

 

CONSOLIDATED WATER CO. LTD.

 

 

 

 

By: 

/s/ Wilmer F. Pergande

 

 

Wilmer F. Pergande

 

 

Chairman of the Board of Directors

Dated: March 27, 2024

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.

Signature

  

Title

  

Date

 

 

 

 

 

 

By:

/s/ Wilmer F. Pergande

 

Chairman of the Board of Directors

 

March 27, 2024

 

Wilmer F. Pergande

 

 

 

 

 

 

 

 

 

 

By:

/s/ Frederick W. McTaggart

 

Director, Chief Executive Officer and President

 

March 27, 2024

 

Frederick W. McTaggart

 

(Principal Executive Officer)

 

 

 

 

 

 

 

 

By:

/s/ David W. Sasnett

 

Executive Vice President & Chief Financial Officer

 

March 27, 2024

 

David W. Sasnett

 

(Principal Financial and Accounting Officer)

 

 

 

 

 

 

 

 

By:

/s/ Linda Beidler-D’Aguilar

 

Director

 

March 27, 2024

 

Linda Beidler-D’Aguilar

 

 

 

 

 

 

 

 

 

 

By:

/s/ Brian E. Butler

 

Director

 

March 27, 2024

 

Brian E. Butler

 

 

 

 

 

 

 

 

 

 

By:

/s/ Carson K. Ebanks

 

Director

 

March 27, 2024

 

Carson K. Ebanks

 

 

 

 

 

 

 

 

 

 

By:

/s/ Clarence B. Flowers, Jr.

 

Director

 

March 27, 2024

 

Clarence B. Flowers, Jr.

 

 

 

 

 

 

 

 

 

 

By:

/s/ Leonard J. Sokolow

 

Director

 

March 27, 2024

 

Leonard J. Sokolow

 

 

 

 

 

 

 

 

 

 

By:

/s/ Raymond Whittaker

 

Director

 

March 27, 2024

 

Raymond Whittaker

 

 

 

 

84

EX-4.1 2 cwco-20231231xex4d1.htm EX-4.1

Exhibit 4.1

CONSOLIDATED WATER CO. LTD.

DESCRIPTION OF SECURITIES

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 “Memorandum of Association”), and our Articles of Association, as amended (the “Articles of Association”), both of which are exhibits to our Annual Reports on Form 10-K.

Under our Memorandum of Association and Articles of Association we are authorized to issue 25,000,000 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 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.

The ordinary shares (common stock) are listed on the Nasdaq Global Select Market under the symbol “CWCO.” All outstanding ordinary shares are validly issued, fully paid, and nonassessable.

Ordinary Shares

Voting Rights

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.

Dividends and Liquidation Rights

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.

Other Rights

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.

Redeemable Preference Shares

Voting

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.

Dividends and Liquidation Rights

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.

Other Rights

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.


Class B Ordinary Shares

Special Rights

Holders of Class 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 B ordinary shares, and vice versa.

We cannot redeem the Class B ordinary shares, and the holders of the Class B ordinary shares are not entitled to any repayments of capital upon our dissolution.

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 B ordinary shares will also be exchanged pursuant to a formula. The Class B ordinary shares and the Class A ordinary shares rank equally in all other respects.


EX-19 3 cwco-20231231xex19.htm EX-19 _

OVERVIEW

This Insider Trading and Disclosure of Non-public Information Policy (the Policy) sets forth the general standards for all directors, officers, employees, agents and representatives (collectively, Affiliates) of Consolidated Water Co. Ltd. and its subsidiaries (collectively, the Company) with respect to trading, or causing trading of, the Company’s securities while in possession of Material Non-public Information (as defined herein). In addition, this Policy imposes further compliance procedures on the Companys directors, executive officers and certain Affiliates who have been notified by the Company’s Chief Financial Officer (the CFO) as provided herein below.

The CFO will administer the Insider Trading Policy.

APPLICABILITY OF POLICY

This Policy applies to all trading or other transactions in the Company’s securities, including common stock, options for common stock and any other securities the Company may issue from time to time. These other securities may include preferred or preference stock, warrants, convertible debentures and derivative securities relating to the Company’s stock, whether or not issued by the Company, such as exchange-traded options.

Any person who has Material Non-public Information regarding the Company may not purchase or sell the Companys securities until the information has been fully disclosed to the general public in accordance with this Policy. In addition, any person who has obtained Material Non-public Information about another company obtained through his or her employment with the Company may not purchase and sell such company’s securities until the information has been fully disclosed to the general public. Material Non-public Information” and fully disclosed to the general public are each discussed in further detail in this Policy.

Effective: November 17, 2021

2


STATEMENT OF POLICY

GENERAL POLICY

YOU MAY NOT USE MATERIAL NON-PUBLIC INFORMATION IN TRADING ANY SECURITY OF THE COMPANY.

ANY NON-PUBLIC INFORMATION, WHETHER OR NOT MATERIAL, RELATING TO THE COMPANY IS THE PROPERTY OF THE COMPANY. YOU MAY NOT DISCLOSE SUCH INFORMATION ACQUIRED UNDER ANY CIRCUMSTANCES UNLESS SPECIFICALLY AUTHORIZED BY THE CFO.

Trading on Material Non-public Information. While you are in the possession of Material Non-public Information, you and members of your immediate family or household may not purchase or sell the Companys securities (or, if such information relates to another company, the securities of such other company). This includes any offer to purchase or offer to sell. The periods of time covered by this prohibition include the date that you first possess Material Non-public Information and ending at the close of business on the second Trading Day (every day that the NASDAQ Global Select Market is open for trading - generally, every day of the year other than Saturdays, Sundays and federal holidays (a “Trading Day)) following the date the information is fully disclosed to the general public in accordance with this Policy.

If you are in possession of Material Non-public Information, you must forego a proposed transaction:

even though you planned to make the transaction before learning of the

Material Non-public Information; and

even though you may lose money or a potential profit by not completing the transaction.

Other Trading Prohibitions. You may not, at any time, write any options (selling put or call options) on the Company’s securities or sell short (sell a security not owned by you) securities of the Company.

Effective: November 17, 2021

3


Tipping. You are prohibited from disclosing (“tipping”) Material Non-public Information to any other person (including family members) where that information may be used by that person for his or her profit by trading in the securities of companies (including the Company) to which the information relates. Also, you may not make recommendations or express opinions concerning trading in the Companys (or any other companys) securities based on Material Non-public Information.

Confidentiality. Unauthorized disclosure of internal information could create serious problems for the Company, whether or not the information was disclosed for the purpose of conducting improper trading in the Company’s securities. You should not discuss internal Company matters or developments with anyone outside the Company, including through the use of E-mail or the Internet (including on-line bulletin boards and chat rooms), except as required in the performance of your regular job duties.

This prohibition also applies to inquiries about the Company from the financial or business press, investment analysts or others in the financial community. Unless you are expressly authorized otherwise, all these communications on behalf of the Company should be directed to and handled through the Chief Executive Officer of Consolidated Water Co. Ltd. (the CEO”) or CFO. Likewise, solicitation of the media for coverage of corporate issues, entities and/or personnel is the sole responsibility of the CEO.

DEFINITIONS

“Fully Disclosed to the General Public”

“Fully disclosed to the general public” means information must have been disseminated in a manner designed to reach investors generally, including filing the information in a Form 8-K or other periodic report with the Securities and Exchange Commission or, in some instances, issuing a press release to international wire services. A speech to an audience, discussions with the press or securities analysts, a TV or radio appearance, or an article in an obscure or industry focused magazine does not qualify as full disclosure. Fully disclosed to the general public means that the securities markets have had the opportunity to digest the news. Generally, two Trading Days following the filing of a Form 8-K or other periodic report and/or the release to international wire services will be enough time for the securities markets to digest the news.

If you are unsure whether information has been fully disclosed to the general public, you should consult with the CEO or CFO.

Effective: November 17, 2021

4


Material Non-public Information

It is not possible to define all categories of Material Non-public Information. However, information should be regarded as material if there is a reasonable likelihood that it would be considered important to an investor in making an investment decision regarding the purchase or sale of securities.

Material Information

While it is sometimes difficult to determine whether information is material, various categories of information are particularly sensitive and, generally, should always be considered material. Examples of such information are provided below.

Financial results

Projections of future earnings or losses

Significant acquisitions of or mergers with other entities, or sales of significant assets or businesses

Significant new or modified contracts, projects, services or product announcements

Gain or loss, or change in status, of significant customers or contracts

Stock splits

New equity or debt offerings

Significant exposure applicable to, or judicial decisions arising from, actual or threatened litigation

Significant governmental regulatory activities

Changes in senior management

Changes in dividend policy

Significant pricing changes

Impending bankruptcy or financial liquidity problems

Either positive OR negative information may be material. It can sometimes be difficult to know whether information would be considered material.” The determination of whether information is material is almost always made after the fact, when the effect of that information on the market can be quantified. Although you may have information about the Company or another company that you do not consider to be material, federal regulators and others may conclude (with the benefit of hindsight) that such information was material. Therefore, trading in the Companys or another company’s securities when you possess Non-public Information about them can be risky. When doubt exists, the information should be presumed to be material.

If you are unsure whether information of which you are aware is material, you should consult with the CEO or CFO.

Effective: November 17, 2021

5


Non-public Information

Non-public information, whether material or not, is information that has not been fully disclosed to the general public and is otherwise not available to the general public. See Fully Disclosed to the General Public above.

Selective Disclosure of Material Non-public Information

It is a violation of Company policy to disclose in any manner any Material Non-public Information about the Company to any person except as follows: (i) disclosure to a person who has signed an appropriate Company approved agreement to hold such information in confidence; (ii) disclosure to Company personnel who need the information to provide goods and services to the Company and who agree in writing to the CFO to be bound by this Policy; (iii) disclosure to the Company’s lawyers or accountants if the information disclosed is related to a matter on which they are involved; or (iv) as approved by the CEO or the CFO of the Company. All communications with securities analysts, any securities professionals and representatives of large shareholders shall be made solely by the Companys CEO and CFO, unless otherwise specifically authorized by the CEO.

If you should inadvertently selectively disclose any Material Non-public Information to any person, Company policy requires that such inadvertent disclosure be reported immediately to the CEO or the CFO. Such inadvertent disclosure may arise because of a mistaken belief about the materiality or non-public nature of the disclosed information, the identity of the recipient of such disclosure, the applicability of a confidentiality agreement or numerous other reasons. This is necessary because applicable law may require the Company to publicly disclose promptly the information that had been inadvertently disclosed.

Prohibition on Trading Company Securities—Black-Out Period

The CFO has the authority, when he or she deems it necessary or advisable because of developments known to the Company and not yet disclosed to the public or for other reasons, to prohibit all Affiliates from trading in Company securities, (the Black-Out Period). The Black-Out Period may apply to the time, the Trading Window (as defined in this policy), when ordinarily trading in the Company’s securities is permitted. The Black-Out Period shall continue for as long as the CFO specifies. In the event of a Black-Out Period, Affiliates may not engage in any transaction involving the purchase or sale of the Company’s securities during the applicable period and may not disclose to others the fact of such suspension of trading. Trading during a Black-Out Period is a violation of this Policy and may result in serious internal and external consequences, including termination of employment and civil and/or criminal prosecution, fines and/or penalties. To ensure a Black-Out Period is not in effect, any Affiliate planning to trade in the Company’s securities should notify the CFO of their intention to do so prior to initiating any transactions.

Effective: November 17, 2021

6


CERTAIN EXCEPTIONS

The only exceptions to this Policy are as follows:

a)Any automatic payroll deductions, pursuant to a contribution election made by you while not in the possession of Material Non-public Information, and Company matching contributions to buy Company common stock.

b)Award payouts by the Company to you (if applicable) under any equity-based compensation plans.

c)Automatic reinvestment of dividends, pursuant to an election made by you while not in the possession of Material Non-public Information, under the Shareholder Investment Plan.

d)Any transaction specifically approved in writing in advance by the CFO.

e)Exercise of stock options under equity-based compensation plans for cash or the delivery of previously owned Company stock.  However, the sale of any shares issued on the exercise of Company-granted stock options and any cashless exercise of Company-granted stock options are subject to trading restrictions under this Policy.

In all cases, DISCRETIONARY purchases or sales of the Company’s securities by you under the Company plans described above, including inter-fund transfers of, and payroll contribution increases and decreases to, are not considered exemptions to the Policy.

POTENTIAL CRIMINAL AND CIVIL LIABILITY AND/OR DISCIPLINARY ACTION

As outlined below, the penalties for insider trading, in addition to the negative impact on the Company’s reputation and business success, are quite severe.

Liability for Insider Trading

United States Federal law provides that you may be subject to civil penalties of up to $5,000,000, additional criminal money penalties and up to twenty (20) years in jail for engaging in transactions in the Company’s securities at a time when you have knowledge of Material Non-public Information regarding the Company.

Effective: November 17, 2021

7


Liability for Tipping

You may also be liable for improper transactions by any person to whom you have disclosed Material Non-public Information regarding the Company or to whom you have made recommendations or expressed opinions on the basis of that information as to trading in the Companys securities (“tipping”). The SEC has imposed large penalties even when the disclosing person did not profit financially from the trading.

Possible Disciplinary Actions

If you violate this Policy, you will also be subject to disciplinary action by the Company, which may include ineligibility for future participation in the Companys equity-based compensation plans or termination of employment.

INDIVIDUAL RESPONSIBILITY OF EACH AFFILIATE TO COMPLY WITH POLICY

You have the individual responsibility to comply with this Policy against insider trading, regardless of whether the Company has recommended a Trading Window to you or anyone else. Appropriate judgment should be exercised in connection with any trading in the Company’s securities. The Company expects strict compliance with the foregoing policies by all persons subject to this Policy. Failure to observe the guidelines may result in serious legal difficulties for you, as well as the Company. A failure to follow the letter and spirit of the Policy would be considered a matter of extreme seriousness.

THE FOLLOWING INFORMATION DESCRIBES ADDITIONAL RESTRICTIONS AND REQUIREMENTS THAT APPLY ONLY TO DIRECTORS, EXECUTIVE OFFICERS AND CERTAIN AFFILIATES WHO HAVE BEEN NOTIFIED BY THE CFO:

REPORTING SHARE OWNERSHIP AND TRANSACTIONS; DISGORGEMENT OF SHORT-SWING PROFITS

Introduction

All Directors, Executive Officers and holders of more than 10% of the Company’s equity securities must report to the United States Securities and Exchange Commission (the SEC”) all of their holdings of and transactions in the Company’s equity securities and must disgorge to the Company any profits realized from buying and selling (or selling and buying) such securities within any six-month period. Pursuant to Section 16 of the Securities Exchange Act of 1934 (the 1934 Act”), any person who becomes a Director, Executive Officer or holder of

Effective: November 17, 2021

8


more than 10% of the Company’s equity securities is required to file a report of beneficial ownership with the SEC and must do so whenever there is a change of beneficial ownership. All delinquent filings must be disclosed in the Company’s annual general meeting proxy statement (with the delinquent individuals identified by name), and delinquent filings can trigger monetary fines for the late filer.

Although the obligation to disclose beneficial ownership of the Company’s equity securities is on the person required to make such disclosure and not the Company, the failure to timely file the appropriate form with the SEC reflects poorly on the Company. Therefore, the Company will assist persons with the filing of the required form.

Beneficial Ownership Statements

Three types of reports are required to be filed under Section 16(a) of the 1934 Act:

Form 3: Initial Statement of Beneficial Ownership of Securities. This form indicates a person’s beneficial ownership of equity securities of the Company (including derivatives securities) and must be filed by persons who have not previously filed such a statement with the SEC. The requirement to file a Form 3 arises when a person becomes a Director or is appointed an Executive Officer or becomes a 10% equity holder. Even if a Director or Executive Officer has no direct, indirect or beneficial interest in the Company’s equity securities, a Form 3 must be filed informing the SEC of the person’s relationship with the Company. Form 3 statements must be filed within 10 days after the occurrence of the event which necessitated the filing of the statement.

Form 4: Statement of Changes of Beneficial Ownership of Securities. Once a Form 3 has been filed for a person, and as long as that person remains a Director, Executive Officer or 10% stockholder (and for up to six months after a person ceases to be a Director or Executive Officer), a Form 4 must be filed whenever any of the following takes place: (i) a change in the number of equity securities (including derivative securities) beneficially owned or (ii) a change in the nature of beneficial ownership as previously reported to the SEC. Form 4 statements must be filed within two (2) business days of the date on which the event or transaction occurred which necessitated the filing.

Form 5: Annual Statement of Beneficial Ownership of Securities. Form 5 must be filed for any person who has been a Director, Executive Officer or 10% holder for any part of the Company’s fiscal year to disclose: (i) acquisitions during any six-month period aggregating less than $10,000; (ii) all transactions that should have been reported in the last fiscal year but were not; and (iii) all exempt transactions, except in the case of (i), (ii) or (iii) as were reported on a Form 4. If required, a Form 5 must be filed within 45 days after the end of the Company’s fiscal year.

Effective: November 17, 2021

9


TRADING WINDOW AND ANNUAL CERTIFICATION

The following standards apply only to:

Directors;

Executive Officers (those officers who are subject to the provisions of Section 16 of the 1934 Act - namely the reporting of beneficial ownership on Forms 3, 4 and 5 and prohibition on short-swing profits); and

certain Affiliates of the Company who have been separately notified that these provisions apply to them. Annually, or when other significant events occur, the Affiliates subject to these standards will be reviewed and individuals will be added or removed from coverage as necessary. You will be notified if there is any change in your status. Notification shall be in writing via letter or electronic communication with evidence of receipt by the notified party.

Trading Window

Certain times during the year are particularly sensitive periods for transactions in the Company’s securities. This sensitivity is due to the fact that Directors, Executive Officers and certain other Affiliates will, during that period, often have knowledge of Material Non-public Information about the expected financial results for the quarter.

To assist in complying with insider trading laws, the Company utilizes aTrading Window”, which opens after the closing of the Nasdaq stock market on the second Trading Day following the date of public disclosure of the Companys financial results for a particular fiscal quarter or year, and closes at the close of the Nasdaq stock market on the twenty-first Trading Day following the date the Company’s financial results are disclosed. All Directors and Executive Officers of the Company and each other Affiliate identified by the CFO may not conduct transactions involving the purchase or sale of the Company’s securities (including the exercise of stock options) other than during the Trading Window. Furthermore, the ability to purchase or sell the Company’s securities within the Trading Window immediately ceases if Material Non-public Information arises during the Trading Window. The preferred period for trading in the Companys securities is generally the first ten trading days of each Trading Window, assuming Material Non-public Information has not arisen during that time.

You should inquire of the CFO if you are uncertain when the quarterly Trading Window opens and closes and, regardless of the Trading Window, you should notify the CFO of your

Effective: November 17, 2021

10


intention to trade in the Company’s securities prior to initiating any transactions. You will be given written notice via email if the CFO exercises his or her authority to close the Trading Window early, by imposition of a Black-Out Period. If at any time the CFO closes the Trading Window early, this fact should not be disclosed to the public, and you will not be permitted to make trades during such Black-Out Period.

The purpose of the Trading Window is to help establish a diligent effort to avoid any violation of insider trading laws. You should know, however, that even during the Trading Window, if you have knowledge of Material Non-public Information concerning the Company, you may not initiate any transactions in the Company’s securities until such information has been fully disclosed to the general public for at least two Trading Days, whether or not the CFO has recommended a suspension of trading to you. Trading in the Company’s securities during the Trading Window should not be considered a “safe harbor,” and you should always use good judgment. In addition, a transaction that may be necessary or seem justifiable for independent reasons (including a need to raise money for a personal financial reason) is neither an exception to this Policy nor a safeguard against prosecution for violation of insider trading laws.

Annual Certification

To ensure compliance with this Policy, all Directors and all Executive Officers (and, if applicable, certain other Affiliates who have been so notified by the CFO) are required to certify annually that they have complied with this Policy at all times from the date hereof (or such lesser time as you have been covered under the Policy). This certification shall be obtained in connection with the completion by each Director and Executive Officer of the D&O questionnaire circulated for the purpose of preparing the Company’s annual proxy statement.

ADDITIONAL RESTRICTIONS

THE FOLLOWING INFORMATION DESCRIBES ADDITIONAL RESTRICTIONS AND REQUIREMENTS THAT APPLY ONLY TO DIRECTORS AND EXECUTIVE OFFICERS.

PRE-CLEARANCE OF TRADES AND POST-TRADE NOTIFICATION

The following standards apply only to:

Directors,

Executive Officers (those officers who are subject to the provisions of Section 16 of the 1934

Effective: November 17, 2021

11


Act - namely the reporting of beneficial ownership on Form 3, 4 and 5 and prohibition on short-swing profits), and

Spouses or other persons living in such Directors or Executive Officers’ household or to entities over which such person exercises control.

Pre-Clearance of Trades

Directors and Executive Officers may only trade in the Company’s securities when the Trading Window is open (and assuming a Black-Out Period has not been imposed), and then only with the prior approval of the Company’s CFO. Trading subject to the pre-clearance includes any purchase or sale voluntarily made by or directed by you under the Company’s benefit plans. You must obtain pre-clearance from the CFO via email to purchase or sell any of the Company’s securities or to exercise any Company stock options. Normally, the CFO will approve, as consistent with this Policy, any transaction that complies with this Policy and applicable securities law and that occurs during an open Trading Window.

The CFO must advise you within two (2) business days of receipt of your pre-clearance request whether such request is approved or disapproved. The date of receipt of the pre-clearance request by the CFO is considered to be the first business day.

Post-Trade Notification

Directors and Executive Officers must report each transaction in securities of the Company to the CFO via email within one (1) business day of the trade date.

Effective: November 17, 2021

12


EXCEPTION FOR TRADING PLANS

Notwithstanding the restrictions and prohibitions on trading in the Company’s securities set forth in this Policy, persons subject to this Policy are permitted to effect transactions in the Company’s securities pursuant to approved trading plans established under Rule 10b5-1 under the Securities Exchange Act of 1934, including transactions during Black-Out Periods. Rule 10b5-1 requires that these transactions be made pursuant to a plan that was established while the person was not in possession of Material Non-public Information. In order to comply with this Policy, the CFO must review and approve any such trading plan prior to its effectiveness pursuant to the same time frame and notification requirements as required for the pre-clearance of trades. Insiders seeking to establish a trading plan should contact the Companys CFO. Rule 10b5-1 trading plans may only be established during the trading window periods set forth in the Trading Window” section of this Policy. If a trading plan is approved by the Company, it can only be modified during the trading window periods as set forth herein.

INQUIRIES

Please direct your questions as to any of the matters discussed in this Policy to the CFO or if the CFO is unavailable, the CEO.

INSIDER TRADING POLICY QUICK REFERENCE

Covered Individuals

All Affiliates, regardless of position, are subject to the Insider Trading Policy. The CFO will be responsible for monitoring adherence to the Insider Trading Policy.

Prohibition

You may not trade securities while in the possession of Material Non-public Information, nor during a Black-Out Period of which you have been informed.

Effective: November 17, 2021

13


Trading Window, Pre-clearance of Trades, and Post-trade Notification

Directors, Executive Officers and certain Affiliates who have been notified by the CFO may trade in the Company’s securities only during a Trading Window each quarter, as discussed in the Insider Trading Policy (and only if a Black-Out Period is not then imposed on them). Directors and Executive Officers may trade in the Company’s securities only after obtaining pre-clearance of the trade from the CFO and must provide post-trade notification to the CFO. However, no Director, Executive Officer or Affiliate of the Company may trade at any time, whether or not during a Trading Window, when in possession of Material Non-public Information, except pursuant to an approved Rule 10b5-1 plan.

Effective: November 17, 2021

14


EX-21.1 4 cwco-20231231xex21d1.htm EX-21.1

EXHIBIT 21.1

CONSOLIDATED WATER CO. LTD.

Subsidiaries of the Registrant

The following list includes all of the Registrant’s wholly-owned subsidiaries, majority-owned subsidiaries and affiliates as of December 31, 2023. All subsidiaries of the Registrant appearing in the following table are included in the consolidated financial statements of the Registrant.

Subsidiaries

   

Jurisdiction of Organization

 

 

 

Aguas de Rosarito S.A.P.I. de C.V. (100%)

 

Mexico

 

 

 

Aerex Industries, Inc. (100%)

 

United States of America

 

 

 

Aquilex, Inc. (100%)

 

United States of America

 

 

 

Cayman Water Company Limited (100%)

 

Cayman Islands

 

 

 

Consolidated Water (Bahamas) Limited (90.9%)

 

The Bahamas

 

 

 

Consolidated Water Cooperatief, U.A. (100%)

 

Netherlands

 

 

 

Consolidated Water U.S. Holdings, Inc. (100%)

 

United States of America

 

 

 

DesalCo Limited (100%)

 

Cayman Islands

 

 

 

N.S.C. Agua, S.A. de C.V. (99.9%)

 

Mexico

 

 

 

Ocean Conversion (BVI) Ltd. (Affiliate)

 

The British Virgin Islands

 

 

 

Ocean Conversion (Cayman) Limited (100%)

 

Cayman Islands

 

 

 

PERC Water Corporation (100%)

 

United States of America

Kalaeloa DesalCo LLC (100%)

United States of America

Ramey Environmental Compliance, Inc. (100%)

United States of America


EX-23.1 5 cwco-20231231xex23d1.htm EX-23.1

EXHIBIT 23.1

Independent Registered Public Accounting Firm’s Consent

We consent to the incorporation by reference in the Registration Statement of Consolidated Water Co. Ltd. on Form S-8 (File No. 333-187261 and File No. 333-276483) of our report dated March 27, 2024, with respect to our audits of the consolidated financial statements of Consolidated Water Co. Ltd. as of December 31, 2023 and 2022 and for each of the years in the two year period then ended, which report is included in this Annual Report on Form 10-K of Consolidated Water Co. Ltd. for the year ended December 31, 2023.

/s/ Marcum LLP

 

 

 

West Palm Beach, Florida

 

March 27, 2024

 

1


EX-31.1 6 cwco-20231231xex31d1.htm EX-31.1

EXHIBIT 31.1

CERTIFICATION PURSUANT TO RULE 13a-14(a)/15d-14(a)

OF THE SECURITIES EXCHANGE ACT OF 1934

In connection with the Form 10-K of Consolidated Water Co. Ltd. for the fiscal year ended December 31, 2023, as filed with the Securities and Exchange Commission on the date hereof, I, Frederick W. McTaggart, certify, pursuant to Rule 13a-14(a) of the Securities Exchange Act of 1934, that:

1. I have reviewed the Form 10-K of Consolidated Water Co. Ltd. for the fiscal year ended December 31, 2023;

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;

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;

4. The registrant’s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:

(a) 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;

(b) 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;

(c) Evaluated the effectiveness of the registrant’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

(d) Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and

5. The registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of the registrant’s Board of Directors (or persons performing the equivalent functions):

(a) 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’s ability to record, process, summarize and report financial information; and

(b) Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.

Date: March 27, 2024

By:

/s/ Frederick W. McTaggart

 

Name:

Frederick W. McTaggart

 

Title:

Chief Executive Officer

 

 

(Principal Executive Officer)


EX-31.2 7 cwco-20231231xex31d2.htm EX-31.2

EXHIBIT 31.2

CERTIFICATION PURSUANT TO RULE 13a-14(a)/15d-14(a)

OF THE SECURITIES EXCHANGE ACT OF 1934

In connection with the Form 10-K of Consolidated Water Co. Ltd. for the fiscal year ended December 31, 2023, as filed with the Securities and Exchange Commission on the date hereof, I, David W. Sasnett, certify, pursuant to Rule 13a-14(a) of the Securities Exchange Act of 1934, that:

1. I have reviewed the Form 10-K of Consolidated Water Co. Ltd. for the fiscal year ended December 31, 2023;

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;

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;

4. The registrant’s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:

(a) 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;

(b) 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;

(c) Evaluated the effectiveness of the registrant’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

(d) Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and

5. The registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of the registrant’s Board of Directors (or persons performing the equivalent functions):

(a) 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’s ability to record, process, summarize and report financial information; and

(b) Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.

Date: March 27, 2024

By:

/s/ David W. Sasnett

 

Name: 

David W. Sasnett

 

Title:

Executive Vice President & Chief Financial Officer

 

 

(Principal Financial and Accounting Officer)


EX-32.1 8 cwco-20231231xex32d1.htm EX-32.1

EXHIBIT 32.1

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350,

AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

In connection with the Form 10-K of Consolidated Water Co. Ltd. for the year ended December 31, 2023 as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Frederick W. McTaggart, certify, pursuant to 18 U.S.C. Sec. 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that:

(1) The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and

(2) The information contained in the Report fairly presents, in all material respects, the financial condition and result of operations of the Company.

Date: March 27, 2024

By:

/s/ Frederick W. McTaggart

 

Name:

Frederick W. McTaggart

 

Title:

Chief Executive Officer

 

 

(Principal Executive Officer)


EX-32.2 9 cwco-20231231xex32d2.htm EX-32.2

EXHIBIT 32.2

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350,

AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

In connection with the Form 10-K of Consolidated Water Co. Ltd. for the year ended December 31, 2023 as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, David W. Sasnett, certify, pursuant to 18 U.S.C. Sec. 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that:

(1) The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and

(2) The information contained in the Report fairly presents, in all material respects, the financial condition and result of operations of the Company.

Date: March 27, 2024

By:

/s/ David W. Sasnett

 

Name:

David W. Sasnett

 

Title:

Executive Vice President & Chief Financial Officer

 

 

(Principal Financial and Accounting Officer)


EX-97 10 cwco-20231231xex97.htm EX-97

EXHIBIT 97

CONSOLIDATED WATER CO. LTD.

INCENTIVE COMPENSATION RECOUPMENT POLICY

1. Introduction. The Board of Directors (the “Board”) of Consolidated Water Co. Ltd. (the “Company”) believes that it is in the best interests of the Company and its shareholders to create and maintain a culture that emphasizes integrity and accountability and that reinforces the Company’s pay-for-performance compensation philosophy. The Board has therefore adopted this policy which provides for the recoupment of Incentive-Based Compensation in the event the Company is required to prepare a Restatement resulting from noncompliance with financial reporting requirements under the federal securities laws (this “Policy”). This Policy is designed to comply with Section 10D of the Securities Exchange Act of 1934, as amended, and the rules and regulations thereunder (collectively, the “Exchange Act”), and the corresponding listing standards adopted by The NASDAQ Stock Market (“Nasdaq Requirements”).

2.Recoupment. If the Company is required to prepare a Restatement, the Board shall, unless the Board’s Compensation Committee (the “Compensation Committee”) or, in the absence of the Compensation Committee, a majority of the independent directors serving on the Board, determines it to be Impracticable, take Reasonably Prompt Action to recoup all Recoverable Compensation from any Covered Person. Subject to applicable law, the Board may seek to recoup Recoverable Compensation by requiring a Covered Person to repay such amount to the Company; by adding “holdback” or deferral policies to incentive compensation; by adding post-vesting “holding” or “no transfer” policies to equity awards; by set-off of a Covered Person’s other compensation; by reducing future compensation; or by such other means or combination of means as the Board, in its sole discretion, determines to be appropriate. This Policy is in addition to (and not in lieu of) any right of repayment, forfeiture, or off-set against any Covered Person that may be available under applicable law or otherwise (whether implemented prior to or after adoption of this Policy). The Board may, in its sole discretion and in the exercise of its business judgment, determine whether and to what extent additional action is appropriate to address the circumstances surrounding any Restatement to minimize the likelihood of any recurrence and to impose such other discipline as it deems appropriate.

3. Administration of Policy. The Board shall have full authority to administer, amend, or terminate this Policy and intends that this Policy will be applied to the fullest extent of the law. The Board shall, subject to the provisions of this Policy, make such determinations and interpretations and take such actions in connection with this Policy as it deems necessary, appropriate or advisable. All determinations and interpretations made by the Board shall be final, binding and conclusive. The Board may delegate any of its powers under this Policy to the Compensation Committee of the Board or, subject to the Nasdaq Requirements and the provisions of this Policy, any subcommittee or delegate thereof. This Policy and all controversies arising from or relating to this Policy shall be governed by and construed in accordance with the laws of the State of Delaware, without giving effect to its conflicts of law principles. It is intended that this Policy be interpreted in a manner that is consistent with the requirements of Section 10D of the Exchange Act and any applicable rules or standards adopted by the U.S. Securities and Exchange Commission (the “SEC”) and any applicable Nasdaq Requirement. For the avoidance of doubt,


the enforcement of this Policy is not dependent on if or when any applicable restated financial statements are filed with the SEC.

4. Acknowledgement by Executive Officers. The Board shall provide notice to and seek written acknowledgement of, and agreement to be bound by, this Policy from each Executive Officer in the form of Appendix A (“Acknowledgement”); provided that the failure to provide such notice or obtain such Acknowledgement shall have no impact on the applicability or enforceability of this Policy.

5. No Indemnification. Notwithstanding the terms of any of the Company’s organizational documents, any corporate policy or any contract, no Covered Person shall be indemnified by the Company against the loss of any Recoverable Compensation. Further, the Company shall not enter into any agreement that exempts any Incentive-Based Compensation that is granted, paid or awarded to a Covered Person from the application of this Policy or that waives the Company’s right to recovery of any Recoverable Compensation, and this Policy shall supersede any such agreement (whether entered into before, on or after the Effective Date of this Policy).

6. Disclosures. The Company shall make all disclosures and filings with respect to this Policy and maintain all documents and records that are required by the applicable rules and forms of the SEC (including, without limitation, Rule 10D-1 promulgated under the Exchange Act) and any Nasdaq Requirement.

7. Effective Date. This Policy shall be effective as of the date it is adopted by the Board (the “Effective Date”) and shall apply to Incentive-Based Compensation that is Received on or after October 2, 2023.

8. Amendment. The Board may amend this Policy from time to time in its discretion and shall amend this Policy as it deems necessary to reflect any amendments or other changes to Section 10D of the Exchange Act or any Nasdaq Requirement.

9. Definitions. In addition to terms otherwise defined in this Policy, the following terms, when used in this Policy, shall have the following meanings:

Applicable Period” means the three completed fiscal years, including any Transition Period, immediately preceding the earlier of: (i) the date that the Board, a committee of the Board, or the officer or officers of the Company authorized to take such action if Board action is not required, concludes, or reasonably should have concluded, that the Company is required to prepare a Restatement or (ii) the date a court, regulator or other legally authorized body directs the Company to prepare a Restatement.

Covered Person” means any person who receives Recoverable Compensation.

Executive Officer” means the Company’s president, principal financial officer, principal accounting officer (or if there is no such accounting officer, the controller), any vice-president of the Company in charge of a principal business unit, division or function (such as sales, administration or finance), any other officer who performs a policy-making

2


function, or any other person who performs similar policymaking functions for the Company. Executive officers of the Company’s parent(s) or subsidiaries are deemed Executive Officers of the Company if they perform such policy making functions for the Company.

Financial Reporting Measure” means the measures that are determined and presented in accordance with the accounting principles used in preparing the Company’s financial statements, and any measures that are derived wholly or in part from such measures. Stock price and total shareholder return (“TSR”) are also considered Financial Reporting Measures. A Financial Reporting Measure need not be presented within the financial statements or included in a filing with the SEC.

Impracticable” means, after exercising a normal due process review of all the relevant facts and circumstances and taking all steps required by Exchange Act Rule 10D-1 and any applicable Nasdaq Requirement, the Compensation Committee or, in the absence of the Compensation Committee, a majority of the independent directors serving on the Board, determines that recovery of the Incentive-Based Compensation is impracticable because: (i) it has determined, after making a reasonable attempt to recover such Incentive-Based Compensation, documented such reasonable attempt to recover and provided that documentation to The NASDAQ Stock Market, that the direct expense that the Company would pay to a third party to assist in recovering the Incentive-Based Compensation would exceed the amount to be recovered; (ii) it has concluded that the recovery of the Incentive-Based Compensation would violate home country law adopted prior to November 28, 2022 and has received a legal opinion from home country counsel stating that the recovery would result in such a violation; or (iii) it has determined that the recovery of Incentive-Based Compensation would likely cause an otherwise tax-qualified retirement plan, under which benefits are broadly available to the Company’s employees, to fail to meet the requirements of 26 U.S.C. 401(a)(13) or 26 U.S.C. 411(a) and regulations thereunder.

Incentive-Based Compensation” means any compensation that is granted, earned or vested based wholly or in part upon the attainment of a Financial Reporting Measure.

Reasonably Prompt Action” means that each of the Company, its directors and its officers act in a manner that is consistent with the exercise of their applicable fiduciary duties to safeguard the assets of the Company, including the time value of any potential Recoverable Compensation.

Received means Incentive-Based Compensation received in the Company’s fiscal period during which the Financial Reporting Measure specified in the Incentive-Based Compensation award is attained, even if the payment or grant of the Incentive-Based Compensation occurs after the end of that period.

Recoverable Compensation” means all Incentive-Based Compensation (calculated on a pre-tax basis) Received on or after the Effective Date by a person: (i) after beginning service as an Executive Officer; (ii) who served as an Executive Officer at any time during the performance period for that Incentive-Based Compensation (whether or not such

3


Executive Officer is serving at the time the Recoverable Compensation is required to be repaid to the Company); (iii) while the Company had a class of securities listed on a national securities exchange or national securities association; and (iv) during the Applicable Period, that exceeded the amount of Incentive-Based Compensation that otherwise would have been Received had the amount been determined based on the Financial Reporting Measures, as reflected in the Restatement. With respect to Incentive-Based Compensation based on stock price or TSR, when the amount of erroneously awarded compensation is not subject to mathematical recalculation directly from the information in an accounting restatement, the amount must be based on a reasonable estimate of the effect of the Restatement on the stock price or TSR upon which the Incentive-Based Compensation was received.

Restatement” means an accounting restatement of any of the Company’s financial statements due to the Company’s material noncompliance with any financial reporting requirement under U.S. securities laws, including any required accounting restatement to correct an error in previously issued financial statements that is material to the previously issued financial statements, or that would result in a material misstatement if the error were corrected in the current period or left uncorrected in the current period.

Transition Period” means any transition period in the Company’s financial statements that is the result of a change in the Company’s fiscal year within or immediately following the relevant three completed fiscal year period; provided, however, a transition period between the last day of the Company’s previous fiscal year and the first day of its new fiscal year that comprises a period of nine (9) to twelve (12) months shall be deemed to be a completed fiscal year for purposes of this Policy.

Adopted by the Board on November 15, 2023.

4


Appendix A

AGREEMENT AND ACKNOWLEDGEMENT OF POLICY FOR THE RECOVERY OF ERRONEOUSLY AWARDED COMPENSATION

By my signature below, I, as an Executive Officer of Consolidated Water Co. Ltd. (the “Company”), acknowledge and agree that:

1.I have received and read the attached Incentive Compensation Recoupment Policy (the “Policy”).

2.I am a Covered Person as defined in the Policy.

3.I will be bound by all of the terms and conditions of the Policy, Section 10D of the Exchange Act and any applicable rules or standards adopted by the SEC, and any applicable Nasdaq Requirements both during and after my employment with the Company, including, without limitation, by promptly repaying or returning any Recoverable Compensation to the Company as determined in accordance with the Policy and this Acknowledgement.

Capitalized terms used but not defined herein shall have the meanings ascribed to such terms in the Policy.

Signature:_____________________________

Printed Name:__________________________

Date:__________________________________


GRAPHIC 11 cwco-20231231x10k003.jpg GRAPHIC begin 644 cwco-20231231x10k003.jpg M_]C_X 02D9)1@ ! @ 0 ! #_VP!# ," @," @,# P,$ P,$!0@%!00$ M!0H'!P8(# H,# L*"PL-#A(0#0X1#@L+$!80$1,4%145# \7&!84&!(4%13_ MVP!# 0,$! 4$!0D%!0D4#0L-%!04%!04%!04%!04%!04%!04%!04%!04%!04 M%!04%!04%!04%!04%!04%!04%!04%!3_P 1" 'K TH# 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)B7J#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#]4Z*** "B MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *** M* "BBB@ HHHH **** "BBB@ HHHH **** "BN'\;?&3PUX URVT?4UURZU.X MMC=I;:)X=U'566$-LWO]D@EV#=P-V,]JQ?\ AI'PG_T"/'W_ (;OQ!_\@T > MI45Y;_PTCX3_ .@1X^_\-WX@_P#D&C_AI'PG_P! CQ]_X;OQ!_\ (- 'J5%> M6_\ #2/A/_H$>/O_ W?B#_Y!H_X:1\)_P#0(\??^&[\0?\ R#0!ZE17EO\ MPTCX3_Z!'C[_ ,-WX@_^0:/^&D?"?_0(\??^&[\0?_(- 'J5%>6_\-(^$_\ MH$>/O_#=^(/_ )!H_P"&D?"?_0(\??\ AN_$'_R#0!ZE17EO_#2/A/\ Z!'C M[_PW?B#_ .0:/^&D?"?_ $"/'W_AN_$'_P @T >I45Y;_P -(^$_^@1X^_\ M#=^(/_D&C_AI'PG_ - CQ]_X;OQ!_P#(- 'J5%>6_P##2/A/_H$>/O\ PW?B M#_Y!H_X:1\)_] CQ]_X;OQ!_\@T >I45Y;_PTCX3_P"@1X^_\-WX@_\ D&C_ M (:1\)_] CQ]_P"&[\0?_(- 'J5%>6_\-(^$_P#H$>/O_#=^(/\ Y!H_X:1\ M)_\ 0(\??^&[\0?_ "#0!ZE17EO_ TCX3_Z!'C[_P -WX@_^0:/^&D?"?\ MT"/'W_AN_$'_ ,@T >I45Y;_ ,-(^$_^@1X^_P##=^(/_D&C_AI'PG_T"/'W M_AN_$'_R#0!ZE17EO_#2/A/_ *!'C[_PW?B#_P"0:/\ AI'PG_T"/'W_ (;O MQ!_\@T >I45Y;_PTCX3_ .@1X^_\-WX@_P#D&C_AI'PG_P! CQ]_X;OQ!_\ M(- 'J5%>>>'/CSX4\4>)+#0;>+Q)8:E?^9]E36O">JZ9',40NZK+=6T:%@JD M[=V< X%>AT %%%% !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!\T?M%1FX^(T5J99X8KRW\.6H_P"&=O ?_0,OO_!U??\ MQZO2:;)(L4;.[!$4%F9C@ >M 'G'_#.W@/\ Z!E]_P"#J^_^/4?\,[> _P#H M&7W_ (.K[_X]6%X?_;!^$WB?Q['X/T[Q2LVL32F"W=K.=+2YE'6.*Y9!%(W7 MA6)X/I7LU'1/H#T=NIYM_P ,[> _^@9??^#J^_\ CU'_ SMX#_Z!E]_X.K[ M_P"/5Z310!YM_P ,[> _^@9??^#J^_\ CU'_ SMX#_Z!E]_X.K[_P"/5Z%> MWD6GV<]U.VR""-I9&P3A5&2<#V%<)\/OCSX-^*,^DQ^&[^ZOAJNF'6+25K"> M*-[82>7N+N@4-N_@)#=\8II7T7];_P"3^YB;MJ_Z_JZ^\@_X9V\!_P#0,OO_ M =7W_QZC_AG;P'_ - R^_\ !U??_'JZ/_A8V@'XC?\ ""_;&_X2?^S/[8^R M>2^/LOF"+?OQM^^0-N<]\5M:MJ]CH5A)>ZC=PV-G'C?/<.$1H_X9V\!_] R^_P#!U??_ !ZO M2%8.H93E2,@CO7.>/?B%H7PST./5_$5XUE8/=0V:RK"\I,LKA(UP@)Y9@,]! MWHZV#KIM8^(6A M:!XLT'PW?7;0:MKBRM81&%RLOE*&<;P-H(!S@D$]JX+3OVL_A=J_A/Q5XDLO M$9N=(\,ZE_9&IRQV M _\ H&7W_@ZOO_CU>DUQ_P 3_BUX4^#GAT:WXMU5-+L6D$,0$;RRSR$9"1QH M"[M@$X4$\4FTMQI-[&-_PSMX#_Z!E]_X.K[_ ./4?\,[> _^@9??^#J^_P#C MU:7PG^-'@_XW:#/J_@[5UU2UMY?(N(WA>">WDP#LEBD571L$'# 5V]4TUHR4 MT]CS;_AG;P'_ - R^_\ !U??_'J/^&=O ?\ T#+[_P '5]_\>KI?%7Q#T'P5 MJWAW3=7O&MKSQ!>&PTZ,0N_G3;"^TE00ORJ3EL"M>_UJPTN>S@O+R"UFO9?( MMHY9 K328)VJ#U. 3@>E(>QP?_#.W@/_ *!E]_X.K[_X]1_PSMX#_P"@9??^ M#J^_^/5T7C[XD^'_ (96.F7GB*]:RM]2U*VTBU987EWW,[[(DP@.,MQD\#N1 M73T;J_R_K[U]X;'FW_#.W@/_ *!E]_X.K[_X]1_PSMX#_P"@9??^#J^_^/5Z M310!\JQ>&;'P3^V5H6B:1]JATH:;8WBVL][-<*LTD&O([KYKL5++%$#CKL'I M7U57S5XF_P"3Z-"_[ >F_P#HOQ#7TK0 4444 %%%% !1110 4444 %%%% !1 M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%% M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% 'S5^T% M_P E3T[Z^%O_ %*;*OI6OFK]H+_DJ>G?7PM_ZE-E7TK0 5SOQ&T.\\2^ /$> MDZ=-]GO[[3Y[>"7.-KM&0I_,UT5%3**G%Q?4J,G%J2Z'Q_\ !SXPZ3:Z!\.O MA9/\+/$-]XPT,P6U[;W.CF*UTIXU*M=BX=1&PSR-C%CNKR?0K+Q0WQ2T[,7C MQ/CJ/%3MJ5S,UW_8AT7[2_"9/V?R?)V[0/GW5^C%%:\[<_:/>]W^'X::]UH9 MN*Y'36W_ _^?WI,_./X=_#WQ'H,?@#QRMSXM/B:Y^)6I6%Q'-=W30PZ8UU. M-OVXYQBK?P"CUWPE^T7KVF:/#XA\<:S>K?FX\2:O#K&F-8L0S0 M_:H9Y&M)UR40-"$/ .WJ:_1&BH6BY?)K[TE^:OZLMN[;[N_XM_K;Y'YP?!6P M\0/XO\,#2X/'\?CP6%\/B6_B(W1L)B;9PHC\S]T6\W9L\GMUKGOACHOQ,TSP M#I-IX8L]_2OU HJF[IJV_P#E-:>7 MO:+R)MJGV_SB]?/W;7_R/S+^'DND^&_B!XOU_P &^$?B)K>BP?#22">UUF6_ M@NKB[-Y'YT<,TF9$/+,?+]&*BN5E^'UWXL^#_P :-+M]*\5S>#8O[!\0:)IU MPNI+(O[R5;LQB>1YI, -D$C.%(0<5^KU%-RNMNG_ +)X/&&G^/-0^*)\;V/HW]BBZB,)0+^XV ;B M=PWALU^HM%.$^649=G?\4_OTU?6[[BMI;R7X)K[M=%TLCYG_ &Z(=<\/_#+0 M_'WA?3+C5O$7A#4DO(+2U1FED22-H74!>3_K 2/:OGKP_P#L[>(/AM\4/@W\ M/K?29[CPWX@M-*UCQ+>*A:,7VG[YY/,..LDCIUY^6OT=HJ:_L89I$NH#;),9 DI(4YVR M8)V\Y&<^W_M,P7?A#XH?"?XDW&EZCKGA+PL^H0ZI::9:M=36QN(46*Z$2Y9M MA1E.T$C?7T=16DI-VY>C;^]M_D[?*Y$8I73ZJWX)?I<^,/B7X_O/BK\)O$.O M>$/ ?BGPMX9N/$%F=9U"SM&L]3UO30@\^:*)<3+@84Y&XJ#CG@7/V6/&%OX MD\77-G#XPB^$6H:K86'A*#7[6[N+M)WCQ<$"4&9(/,Q\TG .X\"OL.BE%J-[ M+1V_3_+3LVQN[7W_ )M_KKW2L?,O[9GB&+P7X@^#?BB\LM1N])T?Q,;F];3+ M&6\DCC-M(N[RXE9CRP[5Y1^T+XH\#?M#^(?@[XWM](\77?A[0_$YLM2==-U& MRFB#PL8V$0"N5\P)EP,8R"<9K[QHI0?*TWT=U^'^14GS*W]UQ^^_^?X'Y=>- MM%O=0\?6$>O:;X]O?B;'\4-/N+R1TNY-(72EOLV[*!^X"B/;@@;@6DENWF1MM;:' ++GHPX/8UT%%.+M35/MK^$5_ M[;]["7O2F_\ HOQ#7TK7S5XF_P"3 MZ-"_[ >F_P#HOQ#7TK0 4444 %%%% !1110 4444 %%%% !1110 4444 %%% M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% 'RE^U/XNTCPG\1[6?4 M]2L;.1+/0KZ.WNKV"WDN8[7Q#:W$XB\UT#LL4;MC/;WKH/\ AO3X7?\ /W)_ MX'Z=_P#)5?14D,,?_? H^R0?\\8_^^!0!\\?\-Z? M"[_G[D_\#]._^2J/^&]/A=_S]R?^!^G?_)5?0_V2#_GC'_WP*/LD'_/&/_O@ M4 ?/'_#>GPN_Y^Y/_ _3O_DJC_AO3X7?\_,?_? H^R0?\\8_^^!0!\\?\-Z?"[_G[D_\#]._^2J/^&]/A=_S]R?^!^G? M_)5?0_V2#_GC'_WP*/LD'_/&/_O@4 ?/'_#>GPN_Y^Y/_ _3O_DJC_AO3X7? M\_N?BMXITR2XU"_B6SL++1_(A2*\FB15\RP=\!8UY9B3SS7N%>;?L\? M\DLM?^PGJO\ Z<;F@ _X55XI_P"BR>-/_ +0_P#Y74?\*J\4_P#19/&G_@%H M?_RNKTFB@#S;_A57BG_HLGC3_P M#_^5U'_ JKQ3_T63QI_P" 6A__ "NK MTFB@#S;_ (55XI_Z+)XT_P# +0__ )74?\*J\4_]%D\:?^ 6A_\ RNKTFB@# MS;_A57BG_HLGC3_P"T/_ .5U'_"JO%/_ $63QI_X!:'_ /*ZO2:* /-O^%5> M*?\ HLGC3_P"T/\ ^5U'_"JO%/\ T63QI_X!:'_\KJ])HH \V_X55XI_Z+)X MT_\ +0__E=1_P *J\4_]%D\:?\ @%H?_P KJ])HH \V_P"%5>*?^BR>-/\ MP"T/_P"5U'_"JO%/_19/&G_@%H?_ ,KJ])HH \V_X55XI_Z+)XT_\ M#_P#E M=1_PJKQ3_P!%D\:?^ 6A_P#RNKTFB@#S;_A57BG_ *+)XT_\ M#_ /E=1_PJ MKQ3_ -%D\:?^ 6A__*ZO2:* /-O^%5>*?^BR>-/_ "T/_Y74?\ "JO%/_19 M/&G_ (!:'_\ *ZO2:* /-O\ A57BG_HLGC3_ , M#_\ E=7(^ ?#'C3Q5?>, M(;OXP>+HUT?6Y--@,-AHH+1K!!("^=/.6S*W(P, <>ON]>;?!S_D+_$S_L;) MO_22TH /^%5>*?\ HLGC3_P"T/\ ^5U'_"JO%/\ T63QI_X!:'_\KJ])HH \ MV_X55XI_Z+)XT_\ +0__E=1_P *J\4_]%D\:?\ @%H?_P KJ])HH \V_P"% M5>*?^BR>-/\ P"T/_P"5U'_"JO%/_19/&G_@%H?_ ,KJ])HH \V_X55XI_Z+ M)XT_\ M#_P#E=1_PJKQ3_P!%D\:?^ 6A_P#RNKTFB@#S;_A57BG_ *+)XT_\ M M#_ /E=1_PJKQ3_ -%D\:?^ 6A__*ZO2:* /-O^%5>*?^BR>-/_ "T/_Y7 M4?\ "JO%/_19/&G_ (!:'_\ *ZO2:* /-O\ A57BG_HLGC3_ , M#_\ E=1_ MPJKQ3_T63QI_X!:'_P#*ZO2:* /-O^%5>*?^BR>-/_ +0_\ Y74?\*J\4_\ M19/&G_@%H?\ \KJ])HH \V_X55XI_P"BR>-/_ +0_P#Y74?\*J\4_P#19/&G M_@%H?_RNKTFB@#S;_A57BG_HLGC3_P M#_^5U'_ JKQ3_T63QI_P" 6A__ M "NKTFB@#YU\:?#/Q)%\6OAQ"WQ9\7S22_VELG>ST8/#BW4G:!IX4YZ'<#[8 MKT'_ (55XI_Z+)XT_P# +0__ )74>.O^2R_##_N*?^DZUZ30!YM_PJKQ3_T6 M3QI_X!:'_P#*ZC_A57BG_HLGC3_P"T/_ .5U>DT4 >;?\*J\4_\ 19/&G_@% MH?\ \KJ/^%5>*?\ HLGC3_P"T/\ ^5U>DT4 >;?\*J\4_P#19/&G_@%H?_RN MH_X55XI_Z+)XT_\ +0__E=7I-% 'FW_ JKQ3_T63QI_P" 6A__ "NH_P"% M5>*?^BR>-/\ P"T/_P"5U>DT4 >;?\*J\4_]%D\:?^ 6A_\ RNH_X55XI_Z+ M)XT_\ M#_P#E=7I-% 'FW_"JO%/_ $63QI_X!:'_ /*ZC_A57BG_ *+)XT_\ M M#_ /E=7I-% 'FW_"JO%/\ T63QI_X!:'_\KJ/^%5>*?^BR>-/_ "T/_Y7 M5Z310!YM_P *J\4_]%D\:?\ @%H?_P KJ/\ A57BG_HLGC3_ , M#_\ E=7I M-% 'FW_"JO%/_19/&G_@%H?_ ,KJ/^%5>*?^BR>-/_ +0_\ Y75Z310!YM_P MJKQ3_P!%D\:?^ 6A_P#RNH_X55XI_P"BR>-/_ +0_P#Y75Z310!X1\0O#'C3 MPD?# M/C!XNE_M36[;39O/L-%.V.0/N*XT\8;Y1@G(]JZ[_A57BG_HLGC3_P M"T/_ .5U'QK^]X!_[&RQ_E)7I- 'FW_"JO%/_19/&G_@%H?_ ,KJ/^%5>*?^ MBR>-/_ +0_\ Y75Z310!YM_PJKQ3_P!%D\:?^ 6A_P#RNH_X55XI_P"BR>-/ M_ +0_P#Y75Z310!YM_PJKQ3_ -%D\:?^ 6A__*ZC_A57BG_HLGC3_P M#_^ M5U>DT4 >;?\ "JO%/_19/&G_ (!:'_\ *ZC_ (55XI_Z+)XT_P# +0__ )75 MZ310!YM_PJKQ3_T63QI_X!:'_P#*ZC_A57BG_HLGC3_P"T/_ .5U>DT4 >;? M\*J\4_\ 19/&G_@%H?\ \KJ/^%5>*?\ HLGC3_P"T/\ ^5U>DT4 >;?\*J\4 M_P#19/&G_@%H?_RNH_X55XI_Z+)XT_\ +0__E=7I-% 'FW_ JKQ3_T63QI M_P" 6A__ "NH_P"%5>*?^BR>-/\ P"T/_P"5U>DT4 >;?\*J\4_]%D\:?^ 6 MA_\ RNH_X55XI_Z+)XT_\ M#_P#E=7I-% 'FW_"JO%/_ $63QI_X!:'_ /*Z MC_A57BG_ *+)XT_\ M#_ /E=7I-% 'BWBS2/%OP[O/"U^OQ-\2:[#=:]8Z?< M6&J6>E"&6*:0(X)ALHW!P>"KCFO::\V^./\ QX>#?^QLTK_T>*])H **** " MBBB@ HHHH **** "O"_C3\?/$7P\^(6D^%?#WAFUU^ZU"")H8Y)Y5FEF<7;[ M$1(V&%CLIG+$CL*]TKYI^)O_ ">=\+O]Z#_TV^(J )/^%Z_&?_HD'_D:;_XW M1_PO7XS_ /1(/_(TW_QNOI*B@#YM_P"%Z_&?_HD'_D:;_P"-T?\ "]?C/_T2 M#_R--_\ &Z^DJ* /FW_A>OQG_P"B0?\ D:;_ .-T?\+U^,__ $2#_P C3?\ MQNOI*N!^(7QBT[X?>(] T!]'UC7=9UM9GL[/2(8W8K$ 7+&21 ,!AWH\@/*_ M^%Z_&?\ Z)!_Y&F_^-USGP_^(OQD\!^&(M&3X5->*ES=7'G,\R$^=<23$8V' MIYF/?&:]Y\-_'#P7XBT#2]5;7+31DU*[DTZWM=8GCM9WNT*8,]ZY6!L*^X*2/O, ".1NYKT*BSM?Y?E M_FA7/FW_ (7K\9_^B0?^1IO_ (W1_P +U^,__1(/_(TW_P ;KZ2HI#/FW_A> MOQG_ .B0?^1IO_C='_"]?C/_ -$@_P#(TW_QNOI*B@#Y5UK]J[X@^"];\&VW MBGX;1Z/8^(_$FF^'8KB2XF&);J=8\C,>,JGF/@D [,9!(KZJKYA_;L_X]O@% M_P!E?\-_^C):^GJ "BBB@ HHHH *\6_:!^.^K_"3Q'X$T#0?#L?B+5O%OQG_Z M)!_Y&F_^-T?\+U^,_P#T2#_R--_\;KZ2HH ^;?\ A>OQG_Z)!_Y&F_\ C='_ M O7XS_]$@_\C3?_ !NOI*B@#YM_X7K\9_\ HD'_ )&F_P#C='_"]?C/_P!$ M@_\ (TW_ ,;KZ2K/\0ZY;>&=!U+6+W?]CT^VDNIO+7$[OQ).GPJ:Y.M:J^J,I> M9?*+111[!\AS_JLYXZ^U>O>#OVD_"_BN.REO+74O"EK?:4=;L[KQ"L-O#<60 M56:8.LK!5565COVX!S6WXR^-_@_P0+ 7>K0WDUY>V=BEOI\B3RHUT2('=0V5 M1L$ANA'3-4TXNS]/G>WYZ$IIKF6V_P K7_(\I_X7K\9_^B0?^1IO_C='_"]? MC/\ ]$@_\C3?_&Z]?^&GQ<\,?%C0=/U30-0CD^VVHO4L9W5;M(2S(KO$&)52 MRL >AQ79T--:,9\V_P#"]?C/_P!$@_\ (TW_ ,;H_P"%Z_&?_HD'_D:;_P"- MU])44@/FW_A>OQG_ .B0?^1IO_C='_"]?C/_ -$@_P#(TW_QNOI*B@#Y,\=? MM8?$WX=^'+[6-;^&-KIT$%I>7,9O+JXC29K>SGNVB#"$X9H[:3&1C(%?6=?, M?_!0C_D@]Q_UQUK_ -1W5J^G* "BBB@ HHHH YOXE^+G\ ?#CQ5XHCMA>OHF MDW>I+;,^P2F&%I A;!QG;C.#C-?/_AG]ICXK>,/#FE:]H_PJ2^TG5+2*^L[J M.:<+-#*@>-QF('!5@>1WKU_]H[_DWGXH?]BMJG_I)+6?^R=_R:Q\&_\ L3-& M_P#2&&@#@O\ A>OQG_Z)!_Y&F_\ C='_ O7XS_]$@_\C3?_ !NOI*B@#YM_ MX7K\9_\ HD'_ )&F_P#C='_"]?C/_P!$@_\ (TW_ ,;KZ2I"<#)Z4 ?-W_"] M?C/_ -$@_P#(TW_QNC_A>OQG_P"B0?\ D:;_ .-UZ9X(^.OA_P"(.LS6>CV> MJSV"R7$,>M_9-VGS/ VV91,I.PJ-;^(OQDUKQAX:UYOA4T3Z)]IVP!YB) M?.C"')V<8QGH!HO#4_B)_&?AY/#\$WV:75FU6 6L*Z:TNX+^VBN;::.XMY5#QS1,&1U/(((X(/K2&?.?_"]?C/_ -$@_P#(TW_Q MNC_A>OQG_P"B0?\ D:;_ .-U])44 ?-O_"]?C/\ ]$@_\C3?_&Z/^%Z_&?\ MZ)!_Y&F_^-U])44 >6_L]?&"[^-/A&]UF[L+2P,-Q;K#]CF>1)H9]/M+V)_G M1&5MEVJE2."IY->I5\T_L#_\D=F_W-#_ /49T:OI:@ HHHH **** "ODCX<_ MM'/A;'?Z1?>8(YHKB=EWQR-%(N?*&=LB.N>A*\<5];U\R?\ M$V/^3,? G_7SK'_IVO* +/\ PO7XS_\ 1(/_ "--_P#&Z/\ A>OQG_Z)!_Y& MF_\ C=?25% 'S;_PO7XS_P#1(/\ R--_\;H_X7K\9_\ HD'_ )&F_P#C=>C: MO^T-X0T+XH:EX!O9;N#7-/T5]>F9H/W!MD^]M?/+@<[<= :;X"_:1^'_ (^\ M#^'?%46OVNA:=X@E:#38M?GCLI[F4-M,:([99LC[HR:%[RNOZU:_--?('IO_ M %I?\FCSO_A>OQG_ .B0?^1IO_C='_"]?C/_ -$@_P#(TW_QNO:;7XJ^"K[4 MY]-MO&&@7&HV\_"SPU/K6 MM^*-,\F.WANEM[>]A:>:*5]D3HI<91V! % M?$=])IUEXATN36(;5+RYTI;^%[NVB90P:6-7)488<].>#6+>?M"?#:T_L CQ MOH-U%KM^=,T^:TU&&:.>X&3^,- AM+B-I8;B34 MX%CE17$;,K%L$!R%)'1B!UK/M_C=X'GN+A3XHT:*TC,*I?R:I:_9YGEW;$1A M(26.QN"!G!QG!I#/)O\ A>OQG_Z)!_Y&F_\ C='_ O7XS_]$@_\C3?_ !NO M9KGXM>!K+2=-U2X\9^'H-,U+=]AO9=4@6&ZV@LWE.7P^ "3M)P :Z:RO;?4K M."[M)XKJUG0213PN'21",AE8<$$<@BG8#YS_ .%Z_&?_ *)!_P"1IO\ XW1_ MPO7XS_\ 1(/_ "--_P#&Z^DJ*0'D'[-?QRO/CKH/BZZU#1H]$O?#GB.X\.SV M\9T(P1^[R"0:]?KYA_87Z_M"?]E?\0_RMZ^GJ "BBB@ MHHHH *^4O"W[5?Q)\<6T]QH'PVM=6AM_(6=K2ZG=87FM8;I(V;R@"PBN82<9 M&6QGBOJVOF/]@K_D0_&7_87TS_U&M%H M?\ "]?C/_T2#_R--_\ &Z/^%Z_& M?_HD'_D:;_XW7TE10!\V_P#"]?C/_P!$@_\ (TW_ ,;H_P"%Z_&?_HD'_D:; M_P"-U])44 ?-O_"]?C/_ -$@_P#(TW_QNC_A>OQG_P"B0?\ D:;_ .-UZEJW MQQ\*Z+\7M+^&UWXC8]J\_B_;D^%-W MK$.EV>LK?7UQJTVCVT4-S:@SRQ*3(XW3#:BX RVTDLNT'-&]K?UK;\P[_P!= M+_D<5XU^(OQD\90:/$_PJ:U_L[5;75 5>9MYAD#A/N#&<8SVKH_^%Z_&?_HD M'_D:;_XW7?Z9^T=X1U;Q&NAP/-]N:#3[G+26XB*7C2K!MD\W:YS ^0A8],9K M1\3_ +0GPV\(Z5K&HZCXWT%;?1[B.TU 1:C#(]I,[;5CE56)1B<\-CH?0TVF MOZ_KN"U/+_\ A>OQG_Z)!_Y&F_\ C='_ O7XS_]$@_\C3?_ !NO]3^%O&.@>.=*74_#>N:; MX@TUF*+>:7=QW,)8=0'0D9'UHL!X+_PO7XS_ /1(/_(TW_QNC_A>OQG_ .B0 M?^1IO_C=?25%(#YM_P"%Z_&?_HD'_D:;_P"-T?\ "]?C/_T2#_R--_\ &Z^D MJ* /#OV?_P!H'6?BSX[^('A/7_#FM$M!GU&3:+368&^90(U*O>6Y M*LZDJQ(!P: /K2BOF'_ANN/_ *(!\=__ AG_P#CM'_#=QO8I)HU6-XGA*DX()(+8 MZ9!KD/\ ANN/_H@'QW_\(9__ ([1_P -UQ_]$ ^._P#X0S__ !VDTGO_ %T& MG8XF^_9'^(5_H.D6%U?61$6D7?AV_BTV^6UBNX99]_VR3=;R'S)!S(J[6+(+O46D-\8;FX@N+-H!^]\HM$R.HKYA_X;KC_Z(!\=_P#PAG_^.T?\-UQ_]$ ^._\ MX0S_ /QVH*/IZBOF'_ANN/\ Z(!\=_\ PAG_ /CM'_#=KX0^-OQMU?]HGQ#\&-#T/X+?%O0FTKX MD:%K=[J'B+PE+:VD%K#,PD=Y S;<>8"20 &)(Q7W?0 4444 %%%% !7S;^T M-_R=5^R[_P!A;7?_ $TRU])5\L_M?:EJ_@[XO_ 3QO9>"_%7C32_#FIZM+J% MMX2TF34+F)9K!H8SL7 +N/O$< XSC% 'U-17S#_ ,-UQ_\ 1 /CO_X0S_\ MQVC_ (;KC_Z(!\=__"&?_P".T ?3U%?,/_#=@72Q^'9%\$W7ABZGF\1W6LI=RRVZQHT:3C M%M&K@MMCP,$#' J2Z_9>^(_B+Q%:ZQJ$&AV#QW7AMV@AOWEPFG[Q,=WE#D[@ M5&/8XKKO^&ZX_P#H@'QW_P#"&?\ ^.T?\-UQ_P#1 /CO_P"$,_\ \=K:4W*7 M,^Z?W-O\VS-12A[/I9KY-)/\D6?V-OV=/$W[.>DWNF:S=6FHP:C;0SSSK.9) M8;I696B0E%)AV;2N>AW#'-?2M?,/_#=X_P"N.M?^H[JU?3E? W[37[0.I?'CX=3^&M&^"7QC MTJ[-MJI6?5O!-RL):71M0M8DS$9&RTMS$N=N!DDD $U]\T %%%% !1110!YU M^T=_R;S\4/\ L5M4_P#226L_]D[_ )-8^#?_ &)FC?\ I##6S\?--N]9^!7Q M&T_3[6:^O[OPWJ4%O:VT9DEFD:UD5411DLQ) '))KYF^!W[6]U\-_@I\/\ MPEJGP$^-\NIZ!X>T_2KI[7P3(T32P6T<3E"9 2NY#@D XQP* /M6BOF'_ANN M/_H@'QW_ /"&?_X[1_PW7'_T0#X[_P#A#/\ _': /IZD.<'&,^]?,7_#=+1M6EGL]4DF1A%+]E9!Y3*6W$[F]% S6SX1_93\6VFJ^&]3U>> M*XN;#6=,N+I;O45G#P6<$L:N@2WB4-F084@G: "QP*W?^&ZX_P#H@'QW_P#" M&?\ ^.T?\-UQ_P#1 /CO_P"$,_\ \=JHMPM;I;\'="E[][];_BK,R/&G[(WB M#5KCXM0:?=:>^CZQIE^GA>SGD*BSN[_$EX7^4[5,H+ C/$C<5LZQ^SKXJU"S M\=^'TAT62S\4>;<0^);F0M>Z3*^GK:@0)LSE2IPX_ST_R.43]D MKQ@WA!'GFG;Q-:W=E):W%OXA\B6$6]NT DBD2U6- M$]4\#?#+P_H.M7%K=:G8VXBFELH$AB)R2,(BJHX(R0H!.3@9KQ3_ (;KC_Z( M!\=__"&?_P".T?\ #=HKYA_X; MKC_Z(!\=_P#PAG_^.T?\-UQ_]$ ^._\ X0S_ /QVH+/IZBOF'_ANN/\ Z(!\ M=_\ PAG_ /CM'_#=:QI5QJ#33Z7X,EEMW$U_<3H49G4GY)5S\HYSUZT ??U M%?,/_#=, MOBE\3-2\1Z!JEGID-V-/LG9YF#RV.V>&_B8;3]Z*?*\\LHZ=:YC7OV2/B1^5"FU?+)"ALDAJ[S_ANN/_ *(! M\=__ AG_P#CM'_#=%[::XTN![/6_$%]>S13L28;ZVDBBQ\@W,"R[@<8 ZFJ!_93^ M(^K7OVB]CT.T\GPOHN@1K%?O)O>SOVG>0_NA@-&00/7CWKM_^&ZX_P#H@'QW M_P#"&?\ ^.T?\-UQ_P#1 /CO_P"$,_\ \=JE)J2EVM^":_)L3UBXO^M5+\TC MD?%7[)_Q%\;>*;N:_P!4T^VM2NO0)=P73*CQ7IW0@6JQJB$?=D.69SEBQSBO M3+SX9>,]7U#PEK1\+^&=%O\ 2-8M[BYM[*[)DNH$MF@9WF$(W,H8;%*\*-N: MP?\ ANN/_H@'QW_\(9__ ([1_P -UQ_]$ ^._P#X0S__ !VE?1+M_G<4DI-M M];_B>5>*OV*_B+XA\)Z/X9*Z"]AI%E?:>D\E[)F[2;48KE69/+^3]VK*1D\X MYYX]0^*?[,_B;QI\78?$5G_99T=/$/A_4S%/*0WD67F^<-NPC=\Z[1GGU%2_ M\-UQ_P#1 /CO_P"$,_\ \=H_X;KC_P"B ?'?_P (9_\ X[1&3CRV^R[_ #O? M\QR]Y23^TFODU8\=\9?!OQK\+;GQ#'-X$08SYG&*^V/A;HMWX;^&OA72;^,17UCI=M;3Q@YVND2JPS[$& MO"?^&ZX_^B ?'?\ \(9__CM'_#=GS^K^;M_DCZ>HKYA_X;KC_P"B ?'?_P (9_\ X[1_PW7'_P!$ ^.__A#/ M_P#':0P_87Z_M"?]E?\ $/\ *WKZ>KY@_8)M=:;PQ\7-;UGPOKWA$>(OB1J^ MN66G^)-.>QNS:SI;M&[1O^(R"1E6 )Q7T_0 4444 %%%% !7S'^P5_R(?C+_ M +"^F?\ J-:+7TY7P7^S[\>=2^ FE^)-$U?X+?%_6I;N]L;J.ZT3P7<208CT M;3;21+?V;/B'X@\2Z_XRB\0:7'KW_"2VNM:5I\D!94BMOW<49N?O M1AHFF#*$(_>-ZYJ33/V;?%]NWA1YGTU6TW6?$6H7 6X8_N[Z*580ORM3_\ #=[R=/^ E^ MB'>\N;K_ ,/_ )LXS0_V0_'FF>(-!OFN-(5+&S\-P.1<.Q#V#79G(&SD?OTV M^O.<5"?V4/B9?75U?WMQI3WJZ!;Z8J_V@_DW$\&HK]V_OW/IZBOF'_ANN/\ Z(!\=_\ PAG_ /CM'_#=HKYA_P"&ZX_^B ?'?_PAG_\ CM'_ W7'_T0#X[_ /A#/_\ M': #X _\GM?M6?7PI_Z;)*^GJ^3/V0]3UGQM^T3^T-X]O/ _BWP3HWB,^'AI MT/B[1Y-.N)OL]G+#+A6R&PRC[K' 9LT5YM_PH#PW_T&/&__ (7.M?\ R71_ MPH#PW_T&/&__ (7.M?\ R70!Z317FK? +PTH).L^-@!R2?'.M\, M?"[Q7K3Z5I/C3Q?>7R@E8T\<:X%E ZF-S-/%D< MVO7,EIID;^.]:#7#M>M6N=/\0^-+J!9'A,D?CG M6L;T8JP_X^^Q!'X4!MHSU:BO*M)^#'@_7K!+W3_$/C.[M7+*LL?CK6BI*L5/ M_+WV((_"KG_"@/#?_08\;_\ A;?\* \-_]!CQO_P"%SK7_ M ,ET?\* \-_]!CQO_P"%SK7_ ,ET >DT5XCKW@2U^'7Q&^%<^C:UXI8:EXAN M+&\@U+Q1J-_!/#_8^HS!6BN)W0XDAB8'&04MU !1110 4444 %%%>=?M' M:O?>'_V>?BCJFF7<^GZE8^%M4N;6[MI#'+!*EI*R.C#E65@"".010!Z+17FW M_"@/#?\ T&/&_P#X7.M?_)=07WP/\):9:2W=YXA\8VEK"I>2>?QYK*(BCJ2Q MN\ ?6@#U"BO*-%^#O@GQ)I\=_I/BGQ9JEC+]RZLOB!J\T3_1EO"#5[_A0'AO M_H,>-_\ PN=:_P#DN@#TFBO-O^% >&_^@QXW_P#"YUK_ .2ZIS_!KP9:WL5G M-XG\70WDN/+MY/'^L+(^8+\#/"C7;6HU_QD;E$#M"/' MFL[PIX!*_:\X]Z4? OPJURUL->\9FX50YA'CS6=X4G )'VO..#S0!Z=17F4_ MP'\+VL,DTVN>-(88U+/))X[UE54#J23=\"H/^%+>#C-##_PDGB_S9XFGBC_X M3[6-TD:[=SJ/M?*C*!]>\9I-*"8XV\=ZR&<#K@?:\G&10!Z=17 MFW_"@/#?_08\;_\ A^$.H6EW=6OQ-U6YMK-0]S-#\3M M2=(%)P"["]PH)XR:T=(^'7PW\0:3)D%X5&,'/ M/%6C\&?!BWILSXF\7"[$/V@P'Q_K'F"+IOV_:\[??I0]-P/5:*\N3X'^$I+% M;U/$/C%K-H_.%POCW63&4QG=N^UXQCG/3%31_ 7PS-&LD>M^-7C;?\* \-_P#08\;_ /ADT5YM_PH#PW_ -!CQO\ ^%SK7_R77'_%;X8:?X"\'KKFC:]XQAU&VU/3 M5C:X\8:K<1E7OH(W5HY+ED<%78$,".: />:*** "BBB@ HHHH ***\"^$_PY ML_B-H&MZYKFO>+YM0D\5>(K7-KXNU2UB2*#6;V"%$BAN%1%2**-0%4<+ZT > M^T5YM_PH#PW_ -!CQO\ ^%SK7_R71_PH#PW_ -!CQO\ ^%SK7_R70!Z317FW M_"@/#?\ T&/&_P#X7.M?_)='_"@/#?\ T&/&_P#X7.M?_)= 'I-%>;?\* \- M_P#08\;_ /ADT5YM_PH#PW_ -!C MQO\ ^%SK7_R71_PH#PW_ -!CQO\ ^%SK7_R70!Z317FW_"@/#?\ T&/&_P#X M7.M?_)='_"@/#?\ T&/&_P#X7.M?_)= 'I-%>;?\* \-_P#08\;_ /ADT5YM_PH#PW_ -!CQO\ ^%SK7_R71_PH M#PW_ -!CQO\ ^%SK7_R70!Z317F7[.L]S)\-KB&ZOKW439^(_$%A%<:C=R74 M_D0:S>PPJTLC,[[8XT4%B3A1S7IM !1110 4444 %%%>,ZOX4B\?_'_Q/INJ M:OXBM]/TWPQHMQ;6FD>(+[38EEFN]565RMM-&&9A!",MDX08H ]FHKS;_A0' MAO\ Z#'C?_PN=:_^2ZHZS\'/!7AW3I;_ %;Q1XMTRPBYDNKSQ_K$,2?5FO ! M0!ZO17EFF?!3P?K5A!?:=XD\87]E.H>*YMO'VL21R*>A5ENR"/<5:_X4!X;_ M .@QXW_\+G6O_DNC8#TFBO-O^% >&_\ H,>-_P#PN=:_^2ZBN?@5X5LK>2XN M->\9P01*7>67QWK*JBCJ23=X H ].HKR70?A'X%\4V OM%\6>*M7LBQ07-A\ M0=7GC+#J-RWA&16C_P * \-_]!CQO_X7.M?_ "71L!Z317FW_"@/#?\ T&/& M_P#X7.M?_)='_"@/#?\ T&/&_P#X7.M?_)= 'I-%>7O\#O"<=W%:OX@\9+=2 MJSQPMX\UD.ZKC<0OVO) R,GMD5/_ ,* \-_]!CQO_P"%SK7_ ,ET >DT5YM_ MPH#PW_T&/&__ (7.M?\ R71_PH#PW_T&/&__ (7.M?\ R70!Z317GO[/FHW> MK?!#P1>7]W<7]Y-I,#2W5W*TLLK;1EG=B2S'N2237H5 !7FWB3_DX;P#_P!B M[KW_ */TNO2:\V\2?\G#> ?^Q=U[_P!'Z70!Z31110!C^,=&F\1^$M:TJWG- MM/?64UM',#@HSH5#?@37C<5[XDG\!V?AR#X7W37^DZ5);2RW5RMK$&$)3;:3 M1-O)<\;E*$ ]"5Z"A:Q]4O^!]]]BKO;LW]_5?@>$VVE^)OA,?$OB>Q\,P^&)7N].7PUH* M0K9QW5Q+%)!/&L7FOF0L8W=\ L$!(X)KKM _9=.D^)M.CO=#EU:WBUNWM[N_ MNI-YO-/&E!)?,!;YHY+@9=",,W)!KO-0_:BET?[8=8\"W]DEC)&L[_;(9 GF MV[3P$8ZEE0AA_"?6M'1/VC+K6-(CG;P9=6.H75C;:I9VEWJ$$:26DWW9))2= ML>#@,OS$9&,UIS;NVUORT7X._P".Q">BUW3^?=_>U;L_4\&NOA;X\BE\%16O M@2ZAU71=6TL_VZTC7%RNGI=XFBCE:<"!1"<-&JG>F/A)J/PZU;P_ M=2:/-ICW/AZ:/5Y'?<9;P70:/S#D[F",^#SA>/:H- _;*L/$VFRZGIOA6[O= M*LHXI=1OK>^ADB@5[E[E>H>%?BU:^*_$=KHD&GS0WQM[ MJ>\5Y%/V/RIA$JOCJ7)8KCLII*ZLNMV_PL_EU]2)15VF]K+[G=?/IZ'B/C7X M/^+[OQ'XVU&PT;SSX<1;_P 'L90/M-U+S-VK!\:_"KQ0+ M[0K33_ 3W&I6/]F3#7V+7,JIYN^[CB=IE%N'(,<4^Q!=0F@:'4+BVG%Y$ M!-'92JERQ!Y3 =2O7=G'%2M%%=-&OS_&^I;_ 'E[=;K]/P_5L\/M?@1XVL-8 MT^"Q\/'1]*MD$%BL.CK.UE>"^GEFNHF6ZA6#S(W@_>[7+!"I (/TO\ L]_# MU_!/AK5KG4M+6S\0ZEK6IW%W=2*IGN(C?7#6Y9QDE?*92JYX#=J\^U7]K230 M/L6LW6G1MX2+:J;N\FD2"2(6TD:1* 6(P?,&6) [\8K4\.?M(?$$,\L4MGI>KV]U;(B0K,9!^._A1X.\2:DD4>H:OH]I?W"0J519)(5=@H).!ECQDUU]5 M.#IR<'NM"(R4DI+J>:_%?_D?/@S_ -C97_M3?\FQ_%[_L3]7_ /2*:O4*\O\ VIO^38_B M]_V)^K_^D4U 'J%>6?'[3+B\L/"-\]E/JF@Z7K\-]K.GV\)F:>V6*55)C )< M1S-#*5 /^KS@XKU.J.NZQ!X?T6^U.Z)%M9P//(1UVJ"3_*DWR^]VU^[4J/;O M=?>K'SGXQU>RU*6TN]&T7Q3X9\!WNJR/K.H:%!=V5Y?2BUQ ZQPA;B./S JL M0%W%5SE2V>-\-:=\3]0AUK7-8U?QE!K&G#0QI]LL\ZP$.&%PS6ZD1S,5*[PP M8 C. >:ZWQ7^UU=>%O$-S87\O@[0S;Z58ZHNGZWK)MKZ_P#M/F'RK:,CYV4( MH^K@5Z#X\_:+L/ ]C>/<>']9CD2WD-M>7-KLLI[E8#-Y DSN)P#\X4H>0&)% M-JR:]/P_JWW(R^*R3[_C_5SPKPWJ7C"V@OK'5+SQI=>'C?6YUO5[2ZU3SRF9 M!)Y4];1S$% V;>*HM^U=X-*:?+#9ZY=6UW;V]P]Q!8;DMA-,\$:R_-D,98V3 M"@\X[_&1;%0I*["JYKF_#MK\2K;1->U:WB\5)XQGT^* MRCEO+O4' L(]699@KN&S(MJ05D*&8@[AELU]0:E^TSX>TCP_<:S=Z%XEBL+% MYDU60Z<,:7Y3[)#.V_;QG.(RYV\@8K3MOC9:>(G\2VOAO2[_ %&[T>.XVW,L M6VSN)H>'A$BDE7SQAU7/49 -'-9MU^O?S5SYGNS MXMO_ GJEIXCO_&,OAQ]-O/^$>71I]5FF>\/"Q7$DB+/.H7.T7(*'+9R0N/9 M/B_INMZ3\+/!FNZ'I=Y?:YIUJFF26EK$3,8;NW$#@CJ DI@D;T$1/:NXE^+\ M-UJ?PQ73;5;G3O&AE99W);O1[RPU#4 M;L7L=A;6VE6WFRR2-:/='.YE4 1Q.ZE/Y<3I;O;[WFYE!4R ME9)U8Y 7)*@5] W?[4^@3V9DTS3M4>X,5O+)_O02*=V"" M.F"";GAW]I;0]4L](:^TK5=/FN+:UFU"4P*UOI;W S%'/(&X+<$;=V 06VY% M2[R;OOM\WK?UW7E>P:)K[_E;;TU3\]&>/_"G2_&GB+QAX=LM2U3Q./" OGN- MD>JZOO$BVY+)-+3QO\0--T+3-(OH] M+OM.N-1M]5O(O+CNHXY(T5X<$[D;>>6VG@'&"#7JE:2=TM+?U;] 4;,\U7_D MY"3_ +%-?_2QJ]*KS5?^3D)/^Q37_P!+&KTJLR@HHHH **** "O-OA)_R-_Q M=_[&Q/\ TT:;7I->;?"3_D;_ (N_]C8G_IHTV@#TFBBB@"O?J6L;D $DQL ! MWXKY';X)>)-1^!=GJFLW]MYFC:?=W.GZ3IOA^2WN_->.6(+)[OQ?JV@>#]%L+^71K>">^GU2Y>%':4.R0Q;5.7VKDEL M*-PJ7LUW_P"#_F"TDI=OUL>,3W>L>,_A\^DV.J:?J>JK>*5[X)\2V'B_P 1WOB[3?[4GMM3TN>\3P]I3V^FZAI, M/FE'2'?(7F621O,1F8X1,#&,^US_ +06A:9J!L]3T_4[,PRI9WEZL >SMKUH MPXM6E#3V""".TG=DBN M&(D)"%D(Z;AU*XYK6+?-S1_K9K\OFK^I-O=<7M;_ ('YOY.W4Z+P8OAGQY#X MM72O#%UINCZI$MO(KN3_ (5S<7 A.\6OE>0VH $?ZKS=\@8G&"#7T'?_ +3_ (.TV*^N;B+5 M4TV!;EK?4?L>8+\V[%9UMSNRY5@1R #@E215O5OC]8Z&]DE_X3\4V37;+#&U MQ8(L8N'#&* MYF"[[< KE02 S*:CF4/>>VG]?-75O/T+N]ENOP_II/Y'SM\6 M+7Q#J/C:[\.Z%:>-XM,DCU+1[V 7]\EH;4:9,;9888E6"-#*D>V13YF?E9B& MQ4GAZY^(D?C'2DTVYUZUM(5M8K"*[N=5='TW[.HE5X&B,)DW;CYDKB96"X.W M@^P^!?VIK+Q1X;T>_N]!U&+5=5LK.YMM"LHA+=2/-$TI"Y8(5"(S;BPXZX)Q M6I#^U/X.N[DI;6NLW-O"+R:U M>SW,_G,H+ ^I5Y;^S=_R3S5_P#L81M8,",'G--^+ MO@[4/B%X.D\-65V^GVNIS)!J%W"RB6.USF01AE92S ;,,",,<@]*\*\1?LW> M.M+UKS=&\17VL:?::K+J]O)-+8Q7LLMQ#Y4P^>T:W3:1D8B!(=N03DI=;_U_ M5_P'V_K^M?S/HBZ^(WA.QN9K>Y\3Z-;W$-L;R2*74(E=( 3*P+9"88?,>.1 MSS5FV\:>'KVQ6]M]=TR>S:W^UK<17D;1F'./-# XV9XW=*^9H_V5O$MI\/=: MTJVNEAU!]1TG4+:3[1#)+*MJRNT)=X#$/F'RYB*#"_+BM;3_ -GKQ.UEH,LZ MHUUI>H7&LR)?WL M:M.MK_U_7^?DSW+7_B=X=\+^*=/T'5=0CL+J]T^XU..>X81VZP020QR%I"0% M.ZXCP#UR?2B\^*G@VR\-?\)!)XJT8Z*7:%+Y-0A,,D@SF-7W;6?((V@YS7D_ M[1?P/\0?%?Q/I=[IL5D]G%X?OM,GCNIMN99KNPE48P(/@5X MFL_%GB/6=+T?2M7L[V]OOL^DW-P(HA'<[QAHLZ:C?G3();?4(9$^T!2S1LP; ( Y M'49'K7@?AS]G'QSHNGCPY+IFDW.BW6KVFL75R;]DP%TR&TEMPH7=]^'(8'[K M>HJ>T^ GQ"BTTH;2TGBM[N);6VU"\@ENEA%O-"%TGTB%O$FD+-K"[M-C-]%NOAC.81N_>#']W- M?/'BC]FSQ7<:?X0;1[B/3I?#VFZ5'Y%C-"CRS6T;JZH9H9(Q@N&5G1AE>@." M*T/[.GC'2'T"?2H@+\SK/?2ZA?6MU;C%W]HVS6QM5C;:265H!$RN<@\"CECS M3&K$#)#$(&]/PK+9ZEW?,EZ'TOH/B'2O%.F1: MEHNIV>KZ=+GR[NPN$GB?!P<.I(.#QUK0KB/AU;:SIEA'%?>$M*\-_:999IXM M*N%948! K/A%WN_S9(Z!1DFNWJF--M:GF'[.O_)/]6_[&_Q3_P"G^_KT^O,/ MV=?^2?ZM_P!C?XI_]/\ ?UZ?2&%%%% !1110 5YIH'_)R7CO_L4O#W_I9K5> MEUYIH'_)R7CO_L4O#W_I9K5 'I=>2_&&W6R\;>"]?U;3;G5?"^FFY^U);VSW M0MYW51%,T*!F;&&&0I(W5ZU10M'=!NK,^2-;MKX:S+51'*J0 31QO+DXP 64;QM)!RM"UGXG6_Q#O+NXN?%$J1&[:2VFDN MFGN-.%FY@"P>2+**?S C>8IWE\JP*G ^S**%IHNUOPM]_P"F@+^OOO\ UYZG MPYX7'C7Q7XQTG1(+SQ_IWA&Z\0V,DLLNJ:F9VMWTZ^,X:YE"R1H9DB!52%1M MNS;E:]=OM+\0:I^SYX=35X-4UE]/U6WEU.UN5>2ZN[*&Z.Y7!^:4[ I(.2X' M.<\O^)W[3S^#=:TZUMY?#6CZ9=ZU6VD*S(K8QM,921#G+ /Q\M6I: M72[/[E=?@M@>W*_3SU;O\]?POT.,\9:[IVLZK!>Z!H'BCP]X(N[N-/$&M:); M7FGW5YM@E$2QQQ!;A0C^6&D55R& R0#7'Z!8_$S4)KW6=5U/QHE]IEIH)L+? M[3<112A[RX29I84(CED-OY7F!@0#@D @$>N:9^T+JAFUPZMH$%E!I$&DW5SY M=PS,L5ZTH)P5'*!$/OD^E=_=>/I(/BUI7@];1'M[W1KC53=[SN4QS11A N,$ M$2YSGM5Q34DK=?R5W^!%U--K:UOQ_K_ACY@\2:A\7)4UG2@/$$6E^%=172+B M]-W=PG5+*2625;A9H%:=F6#[.C21@N&,F"#DUHZ%HWC_ %W2+N6^\1>*[/[! MX=NYM)NK.;4'"N;AUA,B/Y3W4BQ$ >FW'[4=O93>-+6?PKK+:A MH-]=VT%M;Q)*T\,$*2/<-A_E3+CU.&7 )) ]:\%:^_BOP;H.MR0K;OJ5A!>- M"K;@ADC5RH/?&[%9P;<;K71?^3)V?YORU14I)SY=M7_Y*U=?BEYZ,^.(]7^) M TC1ETE/%B:;"\\=[=B[O[MVLC=6/GO ]T@N=XA-SL\ST-N)92PF'+G5O,_M2;3K>2Z\Y-C^: M8U+[EP,'.DU)05YMXD_Y.&\ _]B[KW_H_2Z])KS;Q)_R<-X!_[%W7O_1^ MET >DT45S'Q/O[[2_AUXDO--+"_@T^9X2O4,$/(]QUJ9.R;&E=V,#Q+\$-#\ M1ZOJ%V^IZOI]GJSK)JNDV-V([34F554&52I8$JBJ=C+N ;-9>H?LR^$=2:^ MAEFU1=(N/M+Q:+'25!8D*":\CAM_AYI.KZW%\2XH M;A7T[3Y/"?VN,L\EO]E7Y^-O@/HGBW2-;@$US!=ZBD3+*9,HDL-N\,1(QR '.1W]JY MG1?V3= M?">C:=J>MZUJ&KZ;!:10:L\\;R6P@C**D2O&R>7\S\.KGGDD@$>= M6/Q#\;_%37M.6#Q!JOAC389Y]"O4L8D1I+^TMF-VZ,Z'*B)-+\&Z!?^*O&&K01>(=#TC4;F]0VUI%97$\;&0>=*NRWC)4#+9.X@#[U* M*:O*/5Q^>DFFOE<)+E44^B?RU5T_G^I[=H7[,GA#P_H^OZ;;RZI+!K8Q=M<7 M?F.?W[3Y#%+-3AG\.11/!:+&C)<$:A+$1,6A5I-T2 MJ"=J9X; Z5[!\#?B%K>K_&#Q1H.I^(3XDC2.XF!M9AY5B4G"K%-;M$DEM(58 M;0S.) C,,#JHIWLNS^[?]"79M9_@9X9E@AB)O-D-KJ-HN)A]R]=&G[=M M?,5YX[U[P+XCU=[/Q%_9UD_B?49!HR3?9;J^D-R!^X,D+I=-C ^SAE?!W9QB MH/%7Q>U;P5X>:ST?6=3T?6;>2>_MM/:2&WAN]^HS*^U61Y+EE1?G1 @*DL- MV0TKJ*7]:+]#1KDJ-+I?7YGT=)[C4X)7==7?4%^U!'0(\0PGEJA4 $*@/\ M%G=\U?/UQ\1_B/IGA;3/$EOXEU/4)]6UC6M/FM&@C:&UM89YO+EC4)GI^&OB/]ITJ3Q%%MU2[NEMGU,+I5KM2*Z\AX78-D*A M\PC:#D42B]5+M^J7Z_/8(N^J\_Z_K4^U_!GA6Q\"^$=%\.:893IVD6<-A;F= M]\GEQH$7<>,G &36S7D_P[U.6[^*>N&&.>"VO]#T[4KRVN%"/#=.'7YU'W7* M* P_Z9CTKUBB=V[RW?\ GJ9QM:T=M/R3/-?BO_R/GP9_[&RX_P#3%JU>E5YK M\5_^1\^#/_8V7'_IBU:O2J@L**** "BBB@ KR_\ :F_Y-C^+W_8GZO\ ^D4U M>H5Y?^U-_P FQ_%[_L3]7_\ 2*:@#U"LKQ5H$/BKPUJFCSG$-_;26SG&ERLT=NLB!HY& M8;"RR-GY3@X]*R/$W[&^G>)M2$T_B>Z-O;RM)9+-:)-/:JT!A:)9F)(CVD85 M0N,#.:^BZ*OF?-S=2%%) 5'!JAX._93TGPAX5M]#M]ZBT_7)+F6>TEM$N$ADE8,'B#':CJ5'S8)XX(/-;[_ &;2/&NN>-M M-U"UN?$=SI\]G;9L(K1G,@&T7,\8W3*A VAAE>>3G->2:'XKU_P?::QXLCUS M6);/4=6U>2?3=/M8YU 6R\Y9(8]N6DWKD9;!SBLSP7\3_%GCCQK;>'-/\;ZE M)H%UK,*1ZI:W=O>320-IUW*ZK.D0CQYL2?=W!2,;B<@$8OE4%TC]UTM/N,83 M4DZB[OYV?]:'OVJ? VX_L3X=VVA>(WT6_P#!:E;6ZELUNEFW6S6[;T++U#$\ M'K38O@,UUXIM?$>K>(I;_5H[P7LKQ6BPQRN+"6SQM#':-LQ;J>5%>(#XJ>)O M#6DZ>WB3QGK(M=7TVT>6^46ULMI,;J:(L9G39 C)&H+MGYR,#+ 5CZ%\]TFY;6;HBPL+2P"B-?G6!KA@Q/8G[2W_?(KGH/V,O#)\2 MZ?K=^VE:OJ$45M'H^'K2XN9/LZA(C#-(K-!\BJ#MZD9&TDFN_^",KC3_% M-I&2VFV7B"\M[$GH(@02H]ED:11_NUZ14=GWU^_7]0ZOR]WY+3]#ROP!\#G\ M"^)=*U ^);G4=.T;3I=)TO3I+9$%O;NR, S@Y=E\L ,<<=N]>J444VV]_P"N MHSS5?^3D)/\ L4U_]+&KTJO-5_Y.0D_[%-?_ $L:O2J0!1110 4444 %>;?" M3_D;_B[_ -C8G_IHTVO2:\V^$G_(W_%W_L;$_P#31IM 'I-%%% "$@=3BO/O M%7POO]2\3WFN>'?%%QX7OM2MH[34?*MDN%N(X]_ELH8C9(HD8!QGC&0<"O./ MCI8:CXIU_P"(6EK;2W3VO@I7TFW12Q>26:47!0=VQ%"O'(!Q_%SR'Q,^(A\8 M>*[?7_AWKWG0Z;H$6F7.LZ7MF6UGN=1M/W!)!42B.*0LA^91C(&15**;BN]_ MR=OO:MZL*C]G!RWV_P#;?_DK_(]-D_9HMQ)/8KXKU-O#EQ>)J=QIMP!++->K M&J>:UPQWD,45BIZL#R <5CS_ +-6K77CB7'B1[/P@WAK3-"N((HE:>^%M-.[ M!LC]V")$&X$YRPP.#7D/Q.U#7;C5=6T;5O$6H/9:*]\@U=TB2Y$$=[I;KOF\ MOA0)7SC (4$_=S0/C1\3AJVKF'7K1KA+N[BOM,6\:YN[&Q6?;'<+:+:#R<0X MD$KRLL@.5SD"G!7C":^UK\DK*_R^2^1-_>E"VVGXW=OFO5_,]LN?V6+.\T]] M(E\37I\/6OVHZ5IRP(/L!N'+R9<',@!9@H(& >^,U;\:_LW6OCGXC6GBJ[\1 M3,MGJ-KJ5O:2VJ3&WDA&TI'(QS&CC.0H!R2] MM5L"DEY=*-+MQF!QM21PA]!Z!^RU_PBMOH]QIGBZYM]^&]?6:(W,#312VZ P!8HHR8MZAB-S[I$;<% .:WK3XL M^/9/&,MEIOBZPBMHR\5G#<7DEY-/IPLRR7BV<%HS/\^&\X2A#C;@%@*IW:YG MN]?S_K\>A#O'>J^)/ EC?RZL^O:WI/B_ M3K>QU6WO$O;>Y$S1I/'#,L<99?*DEWHRY0@@D[DT444 M%%%% !1110 5Y;^S=_R3S5_^QQ\5_P#J0:A7J5>6_LW?\D\U?_LI4444 >7?$WQCJUAXIBT?2[IK%;?0=0UJ:5$#&5HU6.*/D$8#2%SCG*+ MV)SP?Q ^-^O>!_"'@'7+6>/4[BY\+WNKW5G+M5+V2*V@969@,J-\G5KV[ M6?!MIK'B72-;9VBO-/CGMS@ K/!*H#Q.#VW+&WU3W-<_9_ ;P'8PZC#'X?C: M&_MGLI8YKB:54MV(+0Q!G(AC)525CVCY1QP*:^&S_KXO\U]P*WM%)[+IY:?Y M/[]SQ?QQ\??'=JFI:2EOIVE>(K)+@K/;2-):L#91W,9964L2N\KU R,].*DE M_:XUS2K[41-X3OM4TW2Y7T^YGL='U%E,\<8+S&Z\G[*L6_Y2IDW#J?2O=-2^ M$GA'6+VYO+S1()[FY1DED9W!8&$0D<-_SS4+QZ>O-<_=?#'X7:/K%Q+>VVG1 M7=O9>?<6]]J#L@@5?+^T2PO(4)V_*9F7=V+5.TF^EORW_K_(5GRI+?\ X;]= MONZF5\+O''B[5_B)XTL/%4^FV\-AH^F7MM#8N3;Q><;HNY9AN!Q&@.3CY,C& M:\@\0?%3XC^#?!NJ:C>:_<+K-WX>OM0L[N5+6[T2\ECMS*CV$L.'0!1N"S A MAC!/->R^"]2^"WPYT*Z\3Z#XE\-V.CZH\=E-K4NO)/!?)*P)7>P"@ M\ XQ@ !]AX"^#UCK=[ID']BM?W6FR2OI,FJ&18[&52)'BMFD*PQ,,Y:-54^M M:2:4F[:6_1_U?YFE-J,DY:JZ_1?GT\]S@O$'[17BS1-9T_P^%\/7M_?0S60G ML?M,OV:]2Q:XWS,$\M 64CRBV_!!YYQF>!_VIO%LW_"*Z9=^&;WQ%O>'_@/\-EETS6],TB*\";;JSN MO[0GN8CNB\OS5W2,K%XVP7Y+@\DU7']H+Q->^ M&/%M]J%DGAK5_##6^I2:/+;3PSRVOFE98W\Y LJL@;;-"Q7=CI@@_2",'4,. MA&:\Z?X!^$8+:>VTZQ;3H+NX@EO$2:27SHHI/,6W&]F\N+> 2B87J,7]?U_PP4444@/,/V=?^2?ZM_P!C?XI_]/\ ?UZ?7F'[ M.O\ R3_5O^QO\4_^G^_KT^@ HHHH **** "O-- _Y.2\=_\ 8I>'O_2S6J]+ MKS30/^3DO'?_ &*7A[_TLUJ@#TNBO/?BQJUW;7W@[2[>>6UM]4UA(KF:)]C; M$1Y F001N* <=1D=Z^1OASXV\6^!_A]X<\6J91*W> M6)[BSF 6%04_Y9L>2!T-)-:M]/\ *Y<8\[45OI^)]]T5\AZWXK\;1?%7PQ:7 M?B]E3]U,CH6EP:E?1V^E:KX= M\NSFTXQ7(%T=-:<+(XF^TP3 J6RR,A4?>#$5XK8C_9 M\T=_!-AH%U>SS26^K-K,E["@A:2=W9I@%7A$D#NA4?PL:R?@YJ7B3Q%IFL^% MO$NM?VE(FC:?/%J%M&;>:,7,#;AN!R2I3(?.>>:X>_\ %OB/4/!^I)/=W<=S M\/[":VU!_-EC%Y?L?+BWD$%P(!YIYY,\9[533C)QOM;\/\FEZMH5)JK::^U^ M;_SN_17/3/&7P5;6M3\47=E>[1XF&FVM[$XVK;V]JSDF/'5F#XP<8K0\:?"S M5=;\=:1XKT#Q0/#VH6&G3:84ET];N.6*22-R<%UP08Q^9KQR+XP>/;I%DD\3 MZ=HUK=R:VT%Q<6$9A@73YBB0EF;+/*#N)/01-CO65X8^,OC[Q7XLM]+TW6;+ M3)M3:.6>[-J9QQHEK<_(C/M4&1VX&!@^O-3JF_+7\&OR3_IE17V5UO\ @U^K M1ZAJG[-MU=:WX@U:Q\9W6FWNM&83O'8QOM2:"**=5!/\1A5U/\)R.17J/@SP MU-X1T*PTC[>;VSL+2WL[?="$95CC"$D@\EL9]J\8\5?$36=>^&GP3\3)6>H?;[E[ M=(I+)K8Z?=R%TEM97%Q;[HPRA@LF%!*YQ5N#I\T'I;3_ ,!VMZ7?XDI*7+-; MM-KY[_>TC[$HKX[T7]H#X@^(/B;HW@JRU^W":G=Q9U6ZTJ%)%ADL;J?Y(5E8 M@!H%V^9AL9R".:9KWQM\9>+/ &K2S^)++P[-I/V*&6..+RY-3=[WRF='W!H_ MN8 3/)(/'%2XM*[)YU9M=#['HKY>L?BQXJUP>.M&U_4UM;V'2KG5M)FTOR)+ M8I;S!=T5S!*S$ F-6CF1&))QN ./HSPIJDVM^%](U&XC,,]W9Q3R1D8VLR!B M/S-+E?+S?UU_R9;=I ?\ L7=>_P#1^EUZ37FWB3_DX;P#_P!B[KW_ M */TN@#TFFNBRHR.H9&&"I&01Z4ZB@"KI>EVNBZ?!8V,*V]I NR.).B+Z"II MX4N(9(I 2CJ58 D'!&#R.14E%#UW#;8RO#'A;2O!FBP:3HME'I^GPEF2&/)^ M9F+,Q))+,6)))))))-<]\9?BC;_!OXVKE_BCX*_X63\-O%/A/[9_9W]N:74#PY'-X;M[K3;'4M4.H[9K: M>]9%A"0>41(BM)&&8R*1NR%;%8EQ^U->6&ARZG=^$88H;ZTBO="*:ON6\ADN MX[4-<-Y(^S@--&[$>: C9R2-M:VN_L\7VLZY@>)K>'PQ=76F7VHZ8VF,UQ/- M9,C1>7/YP$:LT4993&YPI (S5KP%\!;KPS=@:WK=AXATRQTF71=*L3I!B6&U M>0.1/NFD$[?)&N0J#"].:M\O3N_NMI^/X;F$>:RYM]/3?7\-_/8U_A9\:[/X MIW)BM+);18K2.6=GN0Q%PQ.Z%%V@N%4*Q?@8=>.N/2J\&\-_LKV_AKXA:%XG MM]STZ[OKJWMUBN+V02W$@R6D8*%!/T QTJY110!YK\5_^1\^#/_8V7'_I MBU:O2J\U^*__ "/GP9_[&RX_],6K5Z50 4444 %%%% !7E_[4W_)L?Q>_P"Q M/U?_ -(IJ]0KR_\ :F_Y-C^+W_8GZO\ ^D4U 'J%%%% !1110!2M-&LK'4+Z M^M[9(;N]*&YE08,I0;5+>I XSUP .PKC/B/\3;WP=JUAI>E:+!K-]/;3W\PN MK_[''';0@&0JWEOND^8;4(4'NZCFO0*\V^,OPBE^*]MI\$>HV%C'!YBR_;=- M-V61UVDQE98RC@="2R?WD:IES6]TJ-KZG.>#_P!I2/QMKVD2:;H22>#-6OET MNRUW[?\ OWN3:BY -MY>!'MRN[S"=P(VXYK4\4_'=?"_BV^LIM'C;P_IMY8Z M=?ZH][LG2YNY%C@$<'ED2)ND3W3OKM\K;];^14\$?M26OC'4;?33HD=EJ-SJ @CB.H!T2TV;VN)',:[&4;5, M>#\\B+N.F[6>&,Z2LMLL?DRQR+)$ M)$\QR9C*),@B1(R0VW!]MT?3AH^D6-@LLEP+6!(!+*_M'^%(M0\56%A#J M.MWOAY[6&:&QA0?:I[AY$CA@:1T5VW1,"20@/&[(;'JE>'^.?@IXAUCQKXK\ M2:3+I3S72Z--IEK=SR1*TUE).SK,RQML1A, &4.>N5XY/7^M?\@Z.Q-?_M3: M-8Z6+C_A$_%%Q?6XNI-5TF&&T-UI$=N0)Y)P;@(RKN4_N&E+ @J&J]% MH-7U[3ULM5F;3$7R9HHHBFI3'RP(+8&3[?6P/>T>[^ZZMVU>M^R6R/H-&+HK%2A(R5;&1['%.KCOA'X6U;P7\/M*T MC6[J*ZU* 2&3R)GFCA#2,R0I(ZJSK&K*@9E!(4$@9Q78T25FTA+8I7NCV6I7 M=C=75ND\]C(9K9WY\IRI0L!Z[689]S5VBBI&%>;?M#_\DMN?^PII/_IRMJ]) MKS;]H?\ Y);<_P#84TG_ -.5M0!Z31110 4444 %%%% !7EO[-W_ "3S5_\ ML6_LW?\D\U?_LI4444 %%%% !7S#\9/A5? MS?$3QKJ>@Z'=R_VCX5MS/HI+2<9K= M7_%-?J.^C7I^#3_0^1D^U0?$S4OB&_@WQ&WA&\U":..S7P_=M>2/_9<,'GM9 M^7YRJSHT6YD'W%7TFWU&[\5_\(U&E]II5?LPE@LEC M,32<'=)L2';N (W'CK7VA15J5E9>7X)_YO\ 0$[._P#73]$>?? W6/$&M^!E MF\11723)GUYA^SK_R3_5O^QO\4_\ I_OZ]/H M**** "BBB@ KS30/^3DO'?\ V*7A[_TLUJO2Z\TT#_DY+QW_ -BEX>_]+-:H M [?7_#ECXEMH(;Z,N(+B.ZB=&VM'(ARK ]O3W!([UEZ5\+/!>@RWDNF>$-!T MZ6\C:&Y>TTR&)IT;[RN54;@<\@\&NHHH'=F1?>$-"U1D:\T73KMD>.1#/:1N M5://EL,C@KDX/;/%01^ O#,6H+?)XT@@D9$C9XHPI*KPJD@=!DX';->;W7Q@\*7WB;QSX5L-$ MO?$>JZ#:VMWJ=EI]E'*+IIS(D<2[F >0>3\Q?"J-N6X./3;B(SV\L:R-"SJ5 M$B8W*2.HSW%?/G@G]GGQA\+_ !UXMU_1O%,/B*WU'1+2PM;37ECB,TT=Q<2R M>>]O I48GPL@+-EW+*VU136M[]OZ_JPU91TWT_-?H7O%Z^!/BQ\&[W6]8TC5 M=(T;0[FZFO\ 0HUMHKB.ZB8B6)PK/$S[L_,LF"6SOYS45G\9/"/A+PYH6J7? MPVU;0/M,_P!DMHI$TNXG2!(41KEI+>[D41JFU"-YDPN-A %:/A7X2>(M#^&V ML^'+C2?#5Q#K-W1$6=@ID(\I5W$ YP6+VOY MV^_K_EUTZ[,G?[VOET_SVW^X]1\(:MX>\:V$@TO2XVTK1;UK*SE>WC$!DA&Q MFMP"<*C%X\X7E& XY.AIO@+PSHZNMAX=TFQ#SM5_!#X&:]\*/&^O3RZG;S>&)(VBT^&*ZFDEE0N&3S8G4)$8E!C!1FW@[ MFVGBO<:':R?=#V;78Y[2/AWX4\/RV\NE^&=&TV2W),+V=A%$8R0P)4JHQP[# MC^\?4T^[\ >&+^:TEN?#FD7$MIN^SO+8Q,T.X[FV$K\N3R<=36]12NQ61S%] M\-/#%Y;ZM$NB65D=696U":R@2"6[P O^P1!_Z#7I- !7$^._AG)X MR\0:)KEEXIUGPKJNE6]U:17&D):2>9%<-"TBNMS!,O6WC(( (YYYKMJ* /-O M^%5^*O\ HLGC/_P!T3_Y74?\*K\5?]%D\9_^ .B?_*ZO2:* /-O^%5^*O^BR M>,__ !T3_Y74?\ "J_%7_19/&?_ ( Z)_\ *ZO2:* /-O\ A5?BK_HLGC/_ M , =$_\ E=1_PJOQ5_T63QG_ . .B?\ RNKTFB@#S;_A5?BK_HLGC/\ \ =$ M_P#E=1_PJOQ5_P!%D\9_^ .B?_*ZO2:* /-O^%5^*O\ HLGC/_P!T3_Y74?\ M*K\5?]%D\9_^ .B?_*ZO2:* /-O^%5^*O^BR>,__ !T3_Y74?\ "J_%7_19 M/&?_ ( Z)_\ *ZO2:* /-O\ A5?BK_HLGC/_ , =$_\ E=1_PJOQ5_T63QG_ M . .B?\ RNKTFB@#S2S^#=^WBKPWK6M?$7Q/XE&@7DE_:6%_!ID4!F>UGMMS MFWLXG.([F3 #@9P3G&*]+HHH **** "BBB@ KEOBIX)/Q,^&'C#P@+T::?$& MCWFDB],/G?9_/@>+S-FY=^W?G;N&<8R.M=310!Y9_P ([\;/^B@^ ?\ PA;W M_P"7%'_"._&S_HH/@'_PA;W_ .7%>IT4 >6?\([\;/\ HH/@'_PA;W_Y<4?\ M([\;/^B@^ ?_ A;W_Y<5ZG10!Y9_P ([\;/^B@^ ?\ PA;W_P"7%'_"._&S M_HH/@'_PA;W_ .7%>IT4 >6?\([\;/\ HH/@'_PA;W_Y<4?\([\;/^B@^ ?_ M A;W_Y<5ZG10!Y9_P ([\;/^B@^ ?\ PA;W_P"7%'_"._&S_HH/@'_PA;W_ M .7%>IT4 >6?\([\;/\ HH/@'_PA;W_Y<4?\([\;/^B@^ ?_ A;W_Y<5ZG1 M0!Y9_P ([\;/^B@^ ?\ PA;W_P"7%'_"._&S_HH/@'_PA;W_ .7%>IT4 >;> M"/A]XPT_Q_=^*O%_BC1-=N'TQ=,@M]$T&;34C42F0LYEO+@N23CC;CWKTFBB M@ HHHH **** "O))/AO\1M#\7>+=2\*>-O"^GZ9K^HIJ9L]8\*7-]-!(+2WM MROG1ZC &4BW##]V"-Q&37K=% 'EG_"._&S_HH/@'_P (6]_^7%'_ COQL_Z M*#X!_P#"%O?_ )<5ZG10!Y9_PCOQL_Z*#X!_\(6]_P#EQ1_PCOQL_P"B@^ ? M_"%O?_EQ7J=% 'EG_"._&S_HH/@'_P (6]_^7%'_ COQL_Z*#X!_P#"%O?_ M )<5ZG10!Y9_PCOQL_Z*#X!_\(6]_P#EQ1_PCOQL_P"B@^ ?_"%O?_EQ7J=% M 'EG_"._&S_HH/@'_P (6]_^7%'_ COQL_Z*#X!_P#"%O?_ )<5ZG10!Y9_ MPCOQL_Z*#X!_\(6]_P#EQ1_PCOQL_P"B@^ ?_"%O?_EQ7J=% 'EG_"._&S_H MH/@'_P (6]_^7%9GB/X9?%;QII\.EZ[X_P#!SZ2;RTNKA-/\&7<$[K#<1S;4 MD?59%0L8P-Q1L9Z&O9J* "BBB@ HHHH **** "O%/!>A_%;X<6.K:/IOACP= MK6GRZ]K&JVU[=>*;NTE>.\U&YO%5XETV4*RBX"'#L"5SGFO:Z* /,_[?^,?_ M $(G@;_PM;S_ .5-']O_ !C_ .A$\#?^%K>?_*FO3** /,_[?^,?_0B>!O\ MPM;S_P"5-']O_&/_ *$3P-_X6MY_\J:],HH \S_M_P",?_0B>!O_ M;S_Y4 MT?V_\8_^A$\#?^%K>?\ RIKTRB@#S/\ M_XQ_P#0B>!O_"UO/_E31_;_ ,8_ M^A$\#?\ A:WG_P J:],HH \S_M_XQ_\ 0B>!O_"UO/\ Y4T?V_\ &/\ Z$3P M-_X6MY_\J:],HH \S_M_XQ_]")X&_P#"UO/_ )4T?V_\8_\ H1/ W_A:WG_R MIKTRB@#S/^W_ (Q_]")X&_\ "UO/_E31_;_QC_Z$3P-_X6MY_P#*FO3** .% M^"WA+6?!7@5K'Q MC'J]SK&KZK/%IMP]Q!%]LU*YNUC61XXV?:LZJ6*+DJ>* M[JBB@ HHHH **** "O*O$&@>/M$^+FL^*?"VC>'-!O_"UO/\ Y4T?V_\ M&/\ Z$3P-_X6MY_\J:],HH \S_M_XQ_]")X&_P#"UO/_ )4T?V_\8_\ H1/ MW_A:WG_RIKTRB@#S/^W_ (Q_]")X&_\ "UO/_E31_;_QC_Z$3P-_X6MY_P#* MFO3** /,_P"W_C'_ -")X&_\+6\_^5-']O\ QC_Z$3P-_P"%K>?_ "IKTRB@ M#S/^W_C'_P!")X&_\+6\_P#E31_;_P 8_P#H1/ W_A:WG_RIKTRB@#S/^W_C M'_T(G@;_ ,+6\_\ E31_;_QC_P"A$\#?^%K>?_*FO3** /,_[?\ C'_T(G@; M_P +6\_^5-']O_&/_H1/ W_A:WG_ ,J:],HH X_X/^$K_P !_"WPMX=U1[9] M2TW3XK:X:S=GA,BKAMC,JDKGH2H)]!78444 %%%>=?%[Q'XBTF_\!:1X:O[+ M2[SQ%KSZ;->WUD;M8HDTV^NR5C$D>6+6J+DMP&/% 'HM%>;?\(I\4O\ HHFA M?^$JW_R91_PBGQ2_Z*)H7_A*M_\ )E 'I-%>;?\ "*?%+_HHFA?^$JW_ ,F4 M?\(I\4O^BB:%_P"$JW_R90!Z317FW_"*?%+_ **)H7_A*M_\F4?\(I\4O^BB M:%_X2K?_ "90!Z317FW_ BGQ2_Z*)H7_A*M_P#)E'_"*?%+_HHFA?\ A*M_ M\F4 >DT5YM_PBGQ2_P"BB:%_X2K?_)E'_"*?%+_HHFA?^$JW_P F4 >DT5YM M_P (I\4O^BB:%_X2K?\ R91_PBGQ2_Z*)H7_ (2K?_)E 'I-%>;?\(I\4O\ MHHFA?^$JW_R91_PBGQ2_Z*)H7_A*M_\ )E 'I-%>4:1JGCGPY\6?#_A[Q!XB MTK7],U;2M1N\6FC-92126\EHJ_,9Y 01W3PN[+$9H4D* MF\Y W8S[5TO_ BGQ2_Z*)H7_A*M_P#)E 'I-%>;?\(I\4O^BB:%_P"$JW_R M91_PBGQ2_P"BB:%_X2K?_)E 'I-%>;?\(I\4O^BB:%_X2K?_ "91_P (I\4O M^BB:%_X2K?\ R90!Z317FW_"*?%+_HHFA?\ A*M_\F4?\(I\4O\ HHFA?^$J MW_R90!Z317FW_"*?%+_HHFA?^$JW_P F4?\ "*?%+_HHFA?^$JW_ ,F4 >DT M5YM_PBGQ2_Z*)H7_ (2K?_)E'_"*?%+_ **)H7_A*M_\F4 >DT5YM_PBGQ2_ MZ*)H7_A*M_\ )E'_ BGQ2_Z*)H7_A*M_P#)E 'I-%>7^#M9\8Z;\5;OPOXD MUS3=>M#HJZG#-9:4UD\;^>8RIS-(&& #VKU"@ HHHH **** "BBO-_B9KOBB M+QEX.\.^&=4L-&?5UO9;B[OM/:\PL*1E55!+'C)D45YM_PBGQ2_ MZ*)H7_A*M_\ )E'_ BGQ2_Z*)H7_A*M_P#)E 'I-%>;?\(I\4O^BB:%_P"$ MJW_R91_PBGQ2_P"BB:%_X2K?_)E 'I-%>;?\(I\4O^BB:%_X2K?_ "91_P ( MI\4O^BB:%_X2K?\ R90!Z317FW_"*?%+_HHFA?\ A*M_\F4?\(I\4O\ HHFA M?^$JW_R90!Z317FW_"*?%+_HHFA?^$JW_P F4?\ "*?%+_HHFA?^$JW_ ,F4 M >DT5YM_PBGQ2_Z*)H7_ (2K?_)E'_"*?%+_ **)H7_A*M_\F4 >DT5YM_PB MGQ2_Z*)H7_A*M_\ )E9T.I^/?"?Q(\(:3KGB72->TO6VNXI([;1&LY(VB@,B ML'^T2 \C!&W\: /6J*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB MB@ HHHH **** "BBB@ KS+XM_P#(_P#P4_[&ZX_],.KUZ;7F7Q;_ .1_^"G_ M &-UQ_Z8=7H ]-HHHH ***XCXRZYJ6C> -0CT.-9M>U'&GZ=&SE 9Y?E4E@K M;0H);.#C'2DW9:#2N]3M@S7L6I: M=>?:XX;.=&DMX1<2Q*#_ *0)DVE <;%'4$UOA]^T%XH;PCX;BUKQ3//KFN+X M4EL4EA5)KF*>X1+V0)M'RD$AR/N[AT)%:QASNT7V7W_Y=27>,7)K;^OQ_4^U M@0>AS2U\"IX\\6>'KV&>SOK?P_IE^L2:GJ\]Y'I,$&TW'DH9_L\J1;FP.4PQ M&,@L,^P^#_B3XON_$?@U-:UW;HD\5N=9OK6!O)BNSYGV> /)'&RI. I9B@^; M8!@2C$17-_7]?U;N.7N_=?\ +_/]3Z8)Q2UXK^TGJ,&K_#+P_?:7,&D-P]M?W@5)[N%)-K.@"J)8U+*OFH"IR.3FN_J6K"04444AGFW MB?\ Y.!^'_\ V =<_P#1VFUZ37FWB?\ Y.!^'_\ V =<_P#1VFUZ30 4444 M%%%% !4-W_QZ3?[C?RJ:H;O_ (])O]QOY4 <#^SE_P F]?"__L5M+_\ 22*N MUU_47TC0]1OHXC-);6\DRQC^(JI('XXKBOVOA?_ -BMI?\ Z215Z&0& M!!&0>H-)IM60TTFFSYU'C'Q1X5\%>#OB%=>*[K6AKEW9QWFA/!"+58[@X*VX M1!(KQYSEF;.P\#LFI?M%>,-&\%:/K]YX=L&C\2W,,6BC38KS4)$5TE=A/!;Q M/(Q5(P>&+;3-8TR_E4M?Z1J;S!&1F95AFCD)A"L[ MD+$R@%FXY-:-III+K]R[?\$3W_K?O_P#@M3_ &J]:T^R\/WTNA6UD+B6U@O] M'O;>]BU*-IKI[<2>2T0,$9V;U:<+N5NW?J?@[\;O$GC[4=#.LZ-INGZ?KEO? M369LYW>6/[-<-%^\W#'S* PQTY%=/<_L[_#RZEMGD\-Q?Z.L05$N9D1C&YDC M=U#@.ZN2P=@6R3SR:Z70OA[X=\-#3!IFEQ6@TU)H[3:S'REE;?(!DG.YCGFB MZ_%_=T,VI=^W_!/,?#^L:_XE&L>+[_QR?#%GIGB&YT[^RKE(%L%MH+KR-LK. MH?S) NY6#@ R+P>_&^,/VL/$_AK2-'U6'PWI=U:>)+L6^B0M=.DJXOX+5OM' M'!(FW#:.",&O<+SX/>#[_P 5?\)%/HL=((9)DQLE>$-Y;R+M7#L MI88&#Q61-\$?AL=RK?""2YD)W1SI/OBC+XC'G)&[>6 "P&[.:4 M+)QYMEO]RO\ UT-FUSN5M/\ @_I^/D<#J/[3>I^#Q?0>)]*T^&ZAEO=.MWLY MV$=W?Q"-X8$#\_O5D;'?*&LV/]JSQ$VKZI$O@V\N;&T:\M3/#I.H"&&:WB=S M))=M"+8Q.Z% %D+ LN<\X]>U'X??#_Q7M3*TN]K34$7*3 M,-WR.%(.#@8/2FQ_"+P%KNHS>((]*MKY]01Y/.CN9'MW\Q"KRI&'\M79209% M 8@GGFIZ?+]-']]_E9B=KMK;^M/R^=T>4WO[0WC30M22R\3Z'8Z+:75EYEKJ M$<-UY%U(]N95$5SL:%7#83RY2K,5)7(P*(?VF-?M_##^(QHUE/X>L[J+2)C/ M<,+V2Z:W20R !=FZ0+C&2,D<8%>EZG\,_AM>>)_.O;6Q.K 16S6K7[JKL8V M6(M!Y@5I/+5@KE2^%X/'%M_@1X#?51J+>'H3W]?TOSOT!-:7^?GI_G_EU,+X/?%7Q%XUU&UM/$6E:=8-?Z%; M:[:G3YG?8DIVM$^X?YNWX6,XJ2TE_6BO^-SS5?^3D)/\ L4U_]+&K MTJO-5_Y.0D_[%-?_ $L:O2JDL**** "BBB@ KS;QK_R6WX:?]>^K?^BH:])K MS;QK_P EM^&G_7OJW_HJ&@#SKXV?&_5O WCW5M.'B2?P]IUGI]O- 8?"5WJR M33RLRJDDT0*0[F"J Y7)-:\_[2&H^$[SP;IOC#PS!I.H:X+>U>-=7@-PMX\) MD94M@2[1J05+9!'H1S7J6I?#S0]9N]=GU"T%ZFMV2Z??6\YW12P@,-NWW#MF MO/HOV5O!MM>6EVU]K;BSN+>\1);_ "IF@38CN=N6^3Y2&)'? /-*-TK/NONN M[_A^FBZDM;N/;\;*WXF)I7[5-[>V7VRY\!W5G:1VMCJ4\AU*-S'974C11R ! M>7#HV8^/E&=V>*HZ%^V[X2\0^)9=)LEL+OYI&06>M6\]S%%%,L4SW%NI+P%0 M^\!L[@K<@C!ZWPSX(^%_BN#4]&T#7[/6V@L+/2+VWT_58[B2"*UD:2)7"$E6 MW.V<]:NZE\"+>UT'7+'0-7O;87UK-:VUCJ%P\UA9+*OD&\FMMO^"5O'WQCN[?X+>*O%^@PFSDT^YEM;2>6 W0F$8OR8)0';QZUZ+#\'-&'PAM/AX\MRFDP6<5IY\$FR;Y,$.&(/S;AG)S638_ M#_P[I_B?3H=4\<:IKNL:9<17=K8ZOJ4#20NR2*A$:HK88"3&>NPXZ&AI)V7= M:^6GY@W>FM-=?^!]QE:-^TO8:Q!IB?V'34KN_M+#RI7O$M_/NKI'>.(+M8* L;EFSP! MP#TKT*T_9\\&V>N^%=86SF>_\-?:_P"SY7FSM^T.SR;N/F^9CCTJM8?LX^$= M*\/_ -DV7]H6JI%9QP7<5UBXMFM0PADC;'#@.V200<\C%-.-M>_X7_R_$:^% MI[V7WV_S.-O_ -K"XM;K6;.+P-=SWWA^PGU#6XOMZ*+1('Q*L;;?WIV_,N H M8<'::O/^TQ?SZY)8Z?X&N;V"2YO+*RNCJ,<:SS6\(F?>I4F-#'NPWS?, ,#. M:Z>P_9T\(V$&LH!?SSZSIL^EZA=37.Z:Y28DR2,V/]8=Q^8#C &!5FS^%O@ MW2M'S%06>?,,?(4R#@$], M9-6'_:B\1ZM<^&[2P\%#3KO5)]*NMEYJ"N&L+QY4# JG$H:%@5Z#(.3T'?Z9 M^SKX:T6$VMA?:U9Z4T0CETN"_*6TS^7Y?FNH&2VWKSM.,E34FH?L\>%-02PR MVH026-G96,$L%SM=([61Y(N<=X--.*:;[K[NO\ 7;S":3C)1WMIZW_R M_$X?5/VH;G_A)[CPNNDV>EZZB6UXD:ZG#?,ML]VD#"=(S^YD._*C+ \X/RFN M]^('_)7?A7_U\ZC_ .D;UCZ-^RSX-T6_M;N.?5IY+6'[-;I-=@I%$)HY@@4* M!@/$O)^8C@D\8V/B!_R5WX5_]?.H_P#I&]+3E7?7_@?A^)GKSM]-/^">DT44 M5)84444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 M%>9?%O\ Y'_X*?\ 8W7'_IAU>O3:\R^+?_(__!3_ +&ZX_\ 3#J] 'IM%%% M$%[>0Z=9SW5Q((K>"-I9';HJJ,D_D*XCP=\5?^$LU6.S;2)+'S=%CUN-I)PS M>5)-(D:LH7ABL88\G!;'.,GK?$>BQ>)/#VIZ3,Q2&^MI;9V7J ZE2?UKRRP^ M%?BT6.AZCINN67AG7[?1ET'4([NP.H030QN=DD6R:(H_WF4DL,/ADR,"7?6W M]:2_6Q6EOZ[K]+CO"7[4G@GQ'I^@+?7,^E:QJME8W;V'V.YGBM?M8/D+)<)% MY2[B"H+%-=-?<"S;QN,G3H M-O7YNE,?VHO!7AKPW_:=EI037*MK&J'3;3 MRXRBL@F$4I:5C(NU-N#R2RXY\[_X9+O[#0-0TK1O%MCI-OK*P_VPL>B%Q,\< MWF@P9N,Q \J=YE)'.[/->F?%#X;ZMXY>W;3M9TVW@$+07&F:_I']J6$ZD@A_ M*$L1652.&#XY.5/&,'TM_7]?U8SC?F=]M/\ @G+^'/VBO#%A>WFAW>A:YX<3 M3=.L[OR'TB[F=GN&D @C6*)O,<%,@(6+9) ^5L6K?]J/P5<^(7LDFO1I::.- M7.K/IUTL6#.8?)P8FO M.;@P23, 62XC(B(N&'E@Y!2,[L JV3!^QH\?AR'1I?%L5Q:BR>VEWZ6P+N+T MW<#@BX! 5F*LO.\8P4/6I?%IM=_D[?C;]28J2C9^7YJ_X7_0]0?]H?P%';:= M*=6N]U])+%';C2;PW$1C*B3SX1#YD 4N@9I50#>N3R*Z/P?XVA\5WOB"Q-NU MG?Z+?&SN(2VX,K(LL4JG RKQR(>G!W+SMR?%[O\ 9'EE\.VEC:Z]I&G7XNYK MNYO;;0Y%97D6)=]LWVKS8G40K@O+*#_$IPN/4?AQX/U#1-?\8:WJA*SZO>11 MP1LRLXMK>%88VP=00""*JR_#_+_ (/YCUT_KO\ I;YG>4445!1Y MMXG_ .3@?A__ -@'7/\ T=IM>DUYMXG_ .3@?A__ -@'7/\ T=IM>DT %%%% M !1110 5#=_\>DW^XW\JFJ&[_P"/2;_<;^5 ' _LY?\ )O7PO_[%;2__ $DB MKT2O._VOA?_ -BMI?\ Z215Z)0!\X>)-'O[S6O%]Q-IMQK,^E^,+#5; MO38(_,EN=.6W01^7'G,@4[F"CJT; GBJ_Q%UR;Q/IM[>:3\.?$-EI&IZE&D MFI"UO[6ZO'%LP$TUE"BW(C#"*,%]F2,MM10S=OXO^+UUI.N^(H-%TJRN[NTO M=/\ #\$UQN4R7UQAP)&'2&-)4; R268#&.=8^,_&7@;2=0D\6:)'XGFBEC6R MN/"<*V_VL."6#17-QM@V$8+O/M8$$8/RT6M3L]M/RC^:2?SOZ"]V?GK^+;_! MMKY'SSX&'CP:?X3\(7\VM#5=7T-=)-?M!9Z'XST+3-0DTK^TX' M&H^9%.NI0FY#3RX#[82^9(56(J"0S#I[!HN@ZMH'B[PMI$4>H(;+QI>M8_;9 M))&72?L+F3#R$LT?F.@!)/S;>>*Z/Q)^U?X?\)7FH6VK>&?$]I);B-K=&MK< MR7J-;%-%#YH1FAD=2C#8?D?H>Q'"511I\UM%=_BORM;T=C3D=6HTMW9?@U]^M[ M]TF*XK[^V=)MI UU=1@636*+= KN VE\AFQD,.H-> MDWG[4=I+I/B6'3=&O)-9T;2);Y[F=8OL33QP"4QE5F\]5^889D56Y 8FIO%_ M[6&@_#ZY6#Q!X;\16R/;SRV]W'!;F.]>&'SI8X8S/YOW0Q#.BHVW 8DC*47' M1[I+[HO]4FGW3(2YH6C]IOUN_P#+F37;Y'C5KX%\:3QZ?/JNF>);J32=2L&T M][A;J0PD17L8]%:-IQ.RXQED1E'0N#2BG%REN[I_>NWG;[[ [-=EK^=_POIY7-G]E M_1KC1/AUJ,4^FZII4.Y-N]Y(T3,'^;YD*D;N<$9YKUVN7^& MGC3_ (3_ ,%V.LM"MM[< MN[;^]W/-5_Y.0D_[%-?_ $L:O2J\U7_DY"3_ +%-?_2QJ]*J1A1110 4444 M%>;>-?\ DMOPT_Z]]6_]%0UZ37FWC7_DMOPT_P"O?5O_ $5#0!Z37+?%/0=0 M\4_#7Q3H^E3&WU._TRXMK:0-M*R-&P7GMR1S74T4FKIHJ,G"2DNA\W>(-6U# MQ)X-%GX.^'>MZ-K6EZ&UI-?7%@^GRV2;X?,LK4LH%PSA6(:)C&-@.\D@'D!X M(\0^*-1>+3[/QG9>!Q6UR,:<@7S%B^-_P!IU+8V\FG>#]0NM9LWG231]1M;7[1:31W- MM [>=]J\M?DN@0$+;@WWEP5;;;]L#P1%J%U;36VJ0HDTUK:W!%NRWUQ$_ER0 MQ(LQD#!\J#(B*V"58CFK;'M)\ M965QH::]IOC6_P!3AT]+?P_)9B<1PW*7$RLUZ^X1A?+\EB9C\R [0S$ ^V>! M_BUK'B^'XA2OX6O+&[\.7*P6NC7/EK=S-]CBGV.R221EF>0J&1BN,>]>9']I MWQ5IOA?6-3-AI'BB]MK:WN&TO3(6L+S39)9HT-O<0W5P&D*K)_K08P2N"BUD MUSNR[+\59?AUZ?-!;D]Y]?\ --_CTZ_)VK?LV77B3P)YUWXWO]:C@GM[&PNH MKW0KZ%?[4EE$1/F332F0L[J#)"H@P0=P&<7_ -I[P?XF\0^/-%FT&RUAH6L+ M:UGO-)$BM&K:SI[2KYB%_$&@^*+*SUC3_&NH^ +.^U>.VM]%:ZFNA8MHN0KN M?+4D;R!BOJ?1=1CU*SRD-W 83Y+I>P/&X8 9^\,./]I25/.":\RT_P"/T.O> M'-&\266D75CHTVL0:7>IJ!A:55GPD4T;P2R1L/,>($;B0"V=I7%>NTM5%)]- M/R>OGK]UET%)J4N9=?\ -_U^/4*\V^('_)7?A7_U\ZC_ .D;UZ37FWQ _P"2 MN_"O_KYU'_TC>H ])HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** " MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ** M** "BBB@ HHHH **** "O,OBW_R/_P %/^QNN/\ TPZO7IM>9?%O_D?_ (*? M]C=W8FT]U21 M]EO(0A8@E03@DK@\8SR:]:J.>".YA>&:-98I%*O&ZAE8'J"#U%)JZL:4YJG- M2:O9GQ]XUU-4\5278OW'CJVU7PW#H=O]H(F>TDDA%R$CW?.C1F?><=!R>*S_ M MX=G\?:1%I/AG6(%US4O#OV[Q,DU]((GO(K^%S#<,I=H?,1;B(D*2%.=IQ MBOLE]&T^6]BO'L;9[N$;8[AH5,B#T#8R/PHM-'L+"2>2VL;:WDN#F9XHE4R' MU8@<_C6CE?IU;^]6_P""^[,(IQ27:VOH[_\ 7D?*/P)^*.L:!\1-)\/:W:? MVI_:,,&G65[_ &@P:*W"W#H\4!CS+&6A??*64@-"-IYQ]=5572[-;B&<6D G MA0QQ2"-=R*>JJ<9 ]A5JDW<:5M@HHHJ2@HHHH \V\3_\G _#_P#[ .N?^CM- MKTFO-O$__)P/P_\ ^P#KG_H[3:])H **** "BBB@ J&[_P"/2;_<;^535#=_ M\>DW^XW\J .!_9R_Y-Z^%_\ V*VE_P#I)%7HE>=_LY?\F]?"_P#[%;2__22* MO1* /-=4^#5MK.L^+/M$[1:7KTUIJ2R6KE+NSU"!5031D@KC;'"1GHR-D$-Q MF:I^SG9Z[:L^J>,?$VHZR]Q#.^L7$EJ966(.$B\D6XMPF)'X$623G.0"/7:* M.EOZT_X9+T0[O^OZ_IGA/AK]F>#PSXK\(1VUR6\+>%K"[BM7GN2]Y=37$K/B M5%B2,)%O;8HJ5'3@Y+I=_G_ )L=."E-1]/T_P D>3R?LN_#VRU33&OO'&J/<7!C_L^* MZOK)7FC6ZBND1#Y(>8;XE&YBSE2#;_2_B+H$OB*-?[?CGDUE% MO81+9)) (68#'[L!1G+@\^W%?/OB[29X?"UOIUYI5U-KVI>#-'LO#A^PO(UO M?+C=APA\IE8HQ+$<*?2GZ3\/$\?ZM%X3E@NM-\2Q76OOK6JM8,5$I#E3IK5+F7W/_@79%&JY6J/1OE?S:O\ AL>L7_[.7@_Q MCJD=]-XHU/4(Y]-FM[*"*XM6"120?9WECD6+S'&Q^%9VC#,"%!Q5'Q'^QCX3 M\4:B+N^\0>(F$E:K(+6*:?2YXW-LUQ*9F@(-1G<"<\J5(&,FT_9CT;2I/#4MOK>LWB^'(8A965[);F.26)2$=Y1 94S MQN$;*K=2IKV:BL[O^O+8K_ACE_AIX,'@#P98Z,TRW-RK2W-U.HP);B:5YIG M[ R2.0/0BNHHHH;N[DI6/-5_Y.0D_P"Q37_TL:O2J\U7_DY"3_L4U_\ 2QJ] M*I#"BBB@ HHHH *\V\:_\EM^&G_7OJW_ **AKTFO-O&O_);?AI_U[ZM_Z*AH M ])HHHH X#Q-\*K?Q)XOU*_N/+ETK6]%.C:M;,S+(ZH[/"\9'&1YLP.?[RD' MY<'$?]G32]1,TVM^)-?\0W[106T-]?O;+);6\4ZS+"@BA1<%T4LS*SM@9;@5 MZU133:MY?\'_ #?RTV"7O)I_UM_DONN>2^(/V;/#WB#5]6U-]4U>TO=1,[M) M;R0_N7EDM9"R!HB,AK.+&[(Y;(.1C,C_ &3/"23WQ_M#4S;7$DEQ';*MJGV: M=Y/,:5)%@$K'S/F"R.R*>B@<5[;7R'X[M[C0_B1\3;35M>OM3T2>3PY+J4NI MS@106DDUV)4 78L<0 52 .@)8L22172C%;+1>6HK+677<]^\+?!ZP\/:9XKM M+W6-6\12>)Y/-U*ZU.6-97/V=(,)Y,<80;(U^Z!@YQBN=O?V;-.UFSOH=8\6 M^)-9GDLOL%G=W4R0+O8,B'=,)"=O.!-4U/6+VXBU!->L M(;K5H([J2&<6G[A98IV*,L,8<%-ZDD))*V 5&6E=1EM=+Y:.R]4KW[+U'+^7 M?5_@UK\W:W=KR/8F_8^\,75_J%U?^(?$.I/>6>HV+?:)+4%8KU<3@,D"L3GY MEW$[3P/E^6M73_V8/#^GZ^^K)K6KM/+F6;"6D;2W!C\LW!E2!90V.=JN(\\[ M.*[7X4>-_P#A8O@+3->^Q)8&X\R,PPS>=%^[D:/=')M7?&VS M2V5G-=-!&VC:G"KLD2LVTR2QKG&,N/6O6** /-O^&A_!/_/QK7_A-ZE_\CT? M\-#^"?\ GXUK_P )O4O_ )'KTFB@#S;_ (:'\$_\_&M?^$WJ7_R/1_PT/X)_ MY^-:_P#";U+_ .1Z])HH \V_X:'\$_\ /QK7_A-ZE_\ (]'_ T/X)_Y^-:_ M\)O4O_D>O2:* /-O^&A_!/\ S\:U_P"$WJ7_ ,CT?\-#^"?^?C6O_";U+_Y' MKTFB@#S;_AH?P3_S\:U_X3>I?_(]'_#0_@G_ )^-:_\ ";U+_P"1Z])HH \V M_P"&A_!/_/QK7_A-ZE_\CT?\-#^"?^?C6O\ PF]2_P#D>O2:* /-O^&A_!/_ M #\:U_X3>I?_ "/1_P -#^"?^?C6O_";U+_Y'KTFB@#Q:Q\=:7\0?CUX/GT2 M/4YK>PT+6%N9[K2;NUCC:26P\M=\T2 EO+? !S\I]*]IHHH **** "BBB@ J M&[_X])O]QOY5-10!X!\ /CW\,M,^ _PWL[SXC>$[2[M_#6FQ36\^N6J21.MK M&&5E+Y!!!!!Y!%=[_P -$_"G_HIO@[_P?VG_ ,/?#/CS]HB[G\,^(M)\10V_A5$FDTF^BNEC8W;$!C&Q )'8U[/4<5O% 28X MDC)Z[5 S4E !1110 4444 %>;>-?^2V_#3_KWU;_ -%0UZ37.>,_AMX1^(]O M;6_BWPMHOBB"U2VBFW>9$C[EV-N4'*^A]J\U_P"&7?@U_P!$D\"_^$U9?_&J M/^&7?@U_T23P+_X35E_\:H ]+BB2"-8XT6.-1A408 'H!3Z\Q_X9=^#7_1)/ M O\ X35E_P#&J/\ AEWX-?\ 1)/ O_A-67_QJ@#TZBO,?^&7?@U_T23P+_X3 M5E_\:H_X9=^#7_1)/ O_ (35E_\ &J /3J\V^('_ "5WX5_]?.H_^D;U%_PR M[\&O^B2>!?\ PFK+_P"-5K^%?@=\./ FL)JWAKX?^%O#VJHC1K?:5HMM;3JK M##*'C0, >XSS0!V]%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44 M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111 M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 % M%%% !1110 4444 %%%07%];6A43W$4);H)'"Y_.@">BJ7]M:?_S_ -M_W^7_ M !H_MK3_ /G_ +;_ +_+_C0!=HJE_;6G_P#/_;?]_E_QH_MK3_\ G_MO^_R_ MXT 7:*I?VUI__/\ VW_?Y?\ &C^VM/\ ^?\ MO\ O\O^- %VBJ7]M:?_ ,_] MM_W^7_&C^VM/_P"?^V_[_+_C0!=HJE_;6G_\_P#;?]_E_P :/[:T_P#Y_P"V M_P"_R_XT 7:*I?VUI_\ S_VW_?Y?\:/[:T__ )_[;_O\O^- %VBJ7]M:?_S_ M -M_W^7_ !J2#4K2YDV0W4,K]=J2!C^0- %FBBB@ 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 **** "O&_%G@CPYXW_ &B;"#Q'H&EZ M_#!X5E>*/5+*.Y6-C=Q@E0ZG!QW%>R5YK)_R$?_!%:_P#QNC_A0/PP_P"B<>$?_!%:_P#QNN]J&\NXK"TGN9VV0PHT MCM@G"@9)P/84F[:L:5]$<1_PH'X8?]$X\(_^"*U_^-T?\*!^&'_1./"/_@BM M?_C=1^"OCKX2\>W5G;Z=/J-K)>VYN[,ZMI5U8+=Q EX6GC02 @G;G .>E= M85X M-):[!YDG_"@?AA_T3CPC_P""*U_^-T?\*!^&'_1./"/_ ((K7_XW78P:S87- MZ]G%?6TMXBAVMTE4R*IZ$KG('O5+3/%VEZS?ZW96EPTMSHLRV]\GEL/+L[4?BIX6TG M6-+TR[U>&"[U2Y2SL=P.RYE:)Y55'QM;Y(V.0<9P.I +L[V!:ZHSO^% _##_ M *)QX1_\$5K_ /&Z/^% _##_ *)QX1_\$5K_ /&ZZQ?$FDO9SW:ZI9-:V[%) MIQ<)LC;N&;. ?K4?AGQ1IGC#2AJ6D7(O+(R21"55(!9&*MC(&>0>>AI :R?\G(6__8IR?^EB M5Z57FLG_ "E5G^(+26_T'4K:%=TTUM)&BDXRQ4@<_4UH M5P/Q4\:7OAJY\):5IC>3?:_JPLQ<; _E11P2W,V >-S);L@SG!<'!QBDUS*Q M46T^9=-?NU/"?$'P>^(/Q3^%O@SPH^AW/@6Z\*Z;*O\ :%W>VLKW=R;&2T5( M?)DDVH?.=BTF/NJ-IR<9TO[.OB,^#IR- \1S7K:DMQ!:RZCH@D@(MC"9/LR6 MR6CQLZ?JK7,45K= M22QAV8PH"Z-&-P4LNULAR1BM9.4V[[O?[[_UY"OIS=%^NAYMKOP2^)VO:E8F MX\*Z;:75I/(9KW2FLX8+J)[-H5^=F,[,&*AD/EH.V\8KT;P=X0\??"FW\0:9 MI/A6V\0'Q$]O>Q7\]W"MOI\XLX+:2.Z0NKR1J8 X,6XL&*_+@$UX/VH_$>HW M\_V#P';2Z9'-81+<3:P8Y9!>22K PC\@\8C5FRW ?C<1@NUW]JO4-!\'VFNS M^&=-4Q2W,.IV;ZT?-C:"\>T?[.JP%I06C9@SB)<=2#D4HMQO;KH_P=OP3(;5 ME+HO^#_P2'X>?"#Q7H7C[2GU/1;83Z?K&IZG>>+XYXP=2@N9)'BMUC#&4;!( MB%7&U1$-I.:Z;2K'Q7X:^(?Q#A'@O4M1TKQ)?136VL6MY9"")/LD<1,B/.LH MPRGHAXZ9J'X4?M#:M\1-;TN&]\*0:1I6JW6JVEC=1ZD9Y6>QN9(6+Q^4H57$ M>X88D'((X!.'XL_:&\1^ _$WC6$Z2NN:?8:PEK#-<.UO;V,/V.&4AY(H)&RS MNV"RXZY90*BI&ZY9=4_S2^7X&D&VW*.]_P#-G->!?V9-6L;'P6*0BW@TQH)4SGYE\TJ"O1NN"*Y[_AF+QI%!I[#0[8R66MF>#;<0%X( M&M+ZW61-S8 C:X@?;G.$^4$@"NZN?VG-9T'P[XFUM;;2M[ M5C!Y07:5C9#^\R#C@CD;3E)N5^MF_G;_ (;UV"DW%>[V:^6K?Y_=8X7P=^SO MXN\/:;;75SHFJ:JEAX$]1\%?#6TTS5-+BT6[%S=3?8(9EE6!))W=%#+P?E8=*\AO/VE?'>@^( M=5GU#PG;26+:=I5U;6<%\\MO9QW'VQVN)YH[8RKD0QH5".H8C!P2U>I>#OB= M=:Y\0=-T^26&?2_$'AT:W8+ ZR"W>*1(YT$B@;U/GPE2>FD2&MOJAT:2:5GDD6TGO[F6RADD!5Y(K1I#!$[!F!=$5CN//)KF]3_9;\)0^& MM;TOP['+HTVM64>E7M[>W-UJ3M8J[-Y*B>14(8H7^4+7OM?,NO_"35O#OC3Q7K&A>%V.D MQ>(-&U:VL=-6*-KR.&W*SE%W*-P9L_,1DYZT,YE\%W\LGCBPUBSM[2.2'.E-=7CO$UQF0!04<.Q3<001S6]\5?@! MK]CXD.M^#O[5EG@:'49L/;R_O3<(9A:QRKM,F/,F FW+Y@CZ 8K327*Y];W\ MM=O\WU=@^%R4.C=O-='\[[=+,]7O?V8_AIJ$/E-X=>"W:.2)X+/4;JVBEB=% M1HI$CE57CVHH\M@5&,@ \UKV'P.\$Z;IUK8P:(/LEM>_VC'%+=32#S_(:WWG M*/^B->-_P#P M,T+_ .65'_"UO%'_ $1KQO\ ^!FA?_+*@#TFBO-O^%K>*/\ HC7C?_P,T+_Y M94?\+6\4?]$:\;_^!FA?_+*@#TFBO-O^%K>*/^B->-__ ,T+_Y94?\ "UO% M'_1&O&__ (&:%_\ +*@#TFBO-O\ A:WBC_HC7C?_ ,#-"_\ EE1_PM;Q1_T1 MKQO_ .!FA?\ RRH ])KS;X@?\E=^%?\ U\ZC_P"D;T?\+6\4?]$:\;_^!FA? M_+*L8W_BCQS\4? ]]/\ #SQ!X8TS1WO9KF]UBZTQD_>6[1HJK;7DSDEC_=Q[ MT >Q4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%% M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1 M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%% M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1 M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !7!>,?BE<^&O%] MIX;TSP?K/BK4I[%]18:9-9Q)#$L@C^8W$\6268<+FN]KS63_ ).0M_\ L4Y/ M_2Q* %_X6AXM_P"B/>*__!AH_P#\G4?\+0\6_P#1'O%?_@PT?_Y.KTFB@#S; M_A:'BW_HCWBO_P &&C__ "=1_P +0\6_]$>\5_\ @PT?_P"3J])HH \V_P"% MH>+?^B/>*_\ P8:/_P#)U'_"T/%O_1'O%?\ X,-'_P#DZO2:* /-O^%H>+?^ MB/>*_P#P8:/_ /)U'_"T/%O_ $1[Q7_X,-'_ /DZO2:* /-O^%H>+?\ HCWB MO_P8:/\ _)U'_"T/%O\ T1[Q7_X,-'_^3J])HH \V_X6AXM_Z(]XK_\ !AH_ M_P G4?\ "T/%O_1'O%?_ (,-'_\ DZO2:* /-O\ A:'BW_HCWBO_ ,&&C_\ MR=3M(^+NH7'C#1O#^M> M?\ #$FK^<+6[O[C3Y86:*,R,I\BYD8':#CY<>]> MCUYM\0/^2N_"O_KYU'_TC>@#TFBBB@ HHHH **** "BBB@ HHHH **** "BB MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H MHHH **** "BBB@ HHHH **** "O-9/\ DY"W_P"Q3D_]+$KTJO-9/^3D+?\ M[%.3_P!+$H XSQ)^T)JR?&/4OAAHL-@GB&66W%A>7]O+]E@B:(R2M*P8"23 M;9$K*6P#-0UK0SHQMM9BTO4+S39[J>)TN9+6$R,6@23S4C. M."<9Z9KM_%'P4\/>+4U\WK7<=QJ\]M=_:H)56:SN(!^YFMVVG8ZD Y.1Z@@D M'D;G]D[PO?:G<7ESK6OS^<+X>09X%C3[9$T=Q]V$,Q.XL"Y8J0 N%RI-U;R? MWVT_'^M;(AI)-[77W7U_#^N];6OVK]%\':LUCXFTJ?24&FW.HQW)NH',J6Z* M\I,0"/$?@J:RLG\5WEE%;SZO:-=) M#%."VXQI+&6('^V!6)JO[.?@D:I'-JOC+5W\4$(S:I>WMI]MDM@K0QP[6AV" M,>8RJRH'#.2'W,2>RNO@;I3_ W\->#;+6=8TNV\.M;OI^HVSP/=QM",(29( MGC;CKE.::Y-^EU]WVOZ]1P;4O>[/[^G]=K'GVO\ [4#_ C\07_A/QU)I6H> M(8FADM+NTECTJTNX9$=\M]IF98F7RG&#(V[Y2.N!M^%/VK?#?C;Q3H&D:/93 MW,6L6,=]!K3^,;2Y$E MWXF6XM7U&)C" (W4PF%$\IAB/R@,-N RVXYEMX$^&_CS[+>6WQ%N/$6C:++% M:S6:>((;RW6Z7]W&TDIW2QS;FQM61 S$94G%0WVU?_ _KY^0/RT_S_K\#.?] MJQ+CQAIOA_\ L<:/>?;H/M\=Y<17+)9R07,@;]S(?+DS /E?.!GCO6_IW[14 MNJZ3HMS;>"-8-WX@<-HEH\T"F_@\DS&;<6Q& BY(;!R5'>J.D_LM>"?!-W9Z MY>ZYJL\6DQ1*KZE<6T5O'#"DJ(KA(44*%F<%NIX+$GFM2S_9JTC3]*TZTM/% M?BJWFTF16T>\6^B:32XUC:+R8$:(Q%#&[(?,1V(P2Q*J13Y;.W]?U_GY ]6K M=OQU_K[O,LZO\9WN?"'@O7M$M52+7-?M=)N(+^,[X5>1DE&%88=2I /(]C6Y M;>.;^;XX:AX.:*W&EV_AZWU9)0K><99+F:)@3G&W;&N!C.<\UF:U\&_#D_@[ MP_X+M=:O] ?3[M-3T^YLYX6O6GA?>TO[Z.19/F?+90CYNW%5F^!%U_PDD/B& M/XD^+X==%BNFSWZ1Z66N8%E>5%=39%!AI&&453C&<]:E6OY7?WJE=_?'0C\,^,/'OCJYN--'Q__P E=^%?_7SJ/_I&]1W'P#T>XU2>4ZWKB:+=78U"\\.I M<1#3[FZR&,K+Y?F+N8!V1'6-FR2F27X?T]STJBBBD,**** "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@ KS63_DY"W_[%.3_ -+$KTJO-9/^3D+?_L4Y/_2Q* /2 MJ*** /GOXMZ)J?B+Q)\2K""UDOM2D\-V+:3;+]Z6)9Y&G6//&XN$SC_IGGM7 M-?$D^(_B7XLFUOPQIWB[1M,\K1M*DO$L;S2[Q\ZB7N5171)?+2+&Z0#80W!( M!Q]1/96\EY%=O;Q-=1(T<<[("Z*Q!90W4 [5R.^T>E3TXNSBWKRN_P"?YI_? MJ)*SDUUM^%FOQ7W:>9\9Z_X/\87-U>:;J<7C;4O#NDW[/:_O]0ED:*/55,;; MD8R3$0YP268H,\@53T>+XQF767:X\3+J>)O[5@$&I%6B,ZE?LKS$6X<0Y"_9 M 6/\?SU]L5X->_M ^(GUWQ-H<7AJ'2=3M-8T_2-,&HR^;YGVF(R>=,(B=H ! M^4-GID@\"87C:*U>OSN^I4O>G*6UW?TL8WP^\+'4/!7QLM8M"\67VCZQ/LL; M776N;;4+Z Z;!&P26['F\L'4-)R",'I7G'C+PMJWB_2[_P#XD_BG6M,TY-)! MU#^PM0T;4X8H-0A=[94B"-=[(Q(X>%#@K\A)Q7HEW^TGXOCTS6VBT71Q?^%+ M74+S7T=I3',EK<-$1;$'Y2ZH7&_=C(!SUIVH_M93:7XN\1:/=V^DV$=O<""R MGO9S"MLNX9FO&8@)&8@\P(QE5 ZD5M!M2A..NBMY\NE_G\ON&VXW3Z-KYZ77 MX+OT\CR'QWIOC3QT_C"Q@T3XB+HU]H.IM^L+J"^LKB,2PW-M()(I4(R&5@2"".A%6:AZ+EMLFO MOO\ \-Z:&:M?G[_U_P 'UL^A\E^!Y?$3:!X8MKZ#6SJL'C6T&EWFM_;EEN(C M"QNV5+T>>B"'[0"&)3.=AQBOK2H)+&VFNX+J2WB>Z@5EBF9 7C#8W!6Z@' S MCK@5/3(-6BU>\T_5-4O;'4(KF)(W^QSVL?EQLBLI M!R,Y#9ZUZ=11UN-.QX7=?LK65QILELGBO589=0AN[?7+D10E]5CN9S-,KY3$ M>69@-F,*<"NN^(_P2TSXD/%)=W]U:2VD4*Z>T*HRVO1J*=WI;IMY?U^ NK??\ K_A^Y@>!/!]MX!\):=H-I-+<0V:%?.FQOD9F M+,Q P!EF)P.!T%;]%%#=]1))*R"BBBD,*\V^('_)7?A7_P!?.H_^D;UZ37FW MQ _Y*[\*_P#KYU'_ -(WH ])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@ K@_&/PMN/$WBZT\2:;XPUOPIJ4%B^G,=*BLI M4FB:02?,+FWEP0RCE44 >;?\*L\5_\ 18O&'_@!HO\ \KZ/^%6>*_\ MHL7C#_P T7_Y7UZ310!YM_PJSQ7_ -%B\8?^ &B__*^C_A5GBO\ Z+%XP_\ M #1?_E?7I-% 'FW_ JSQ7_T6+QA_P" &B__ "OH_P"%6>*_^BQ>,/\ P T7 M_P"5]>DT4 >;?\*L\5_]%B\8?^ &B_\ ROH_X59XK_Z+%XP_\ -%_P#E?7I- M% 'FW_"K/%?_ $6+QA_X :+_ /*^C_A5GBO_ *+%XP_\ -%_^5]>DT4 >;?\ M*L\5_P#18O&'_@!HO_ROH_X59XK_ .BQ>,/_ T7_Y7UZ310!YM_P *L\5_ M]%B\8?\ @!HO_P KZ=I'PAOK;Q?HWB#6?'WB+Q1+I/G&UM-1@TZ*%6EC,;,? ML]K$Q.TG&6Q[5Z/10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 % 2%%% !1110 4444 %%%% '__9 end EX-101.SCH 12 cwco-20231231.xsd EX-101.SCH 99900 - Disclosure - Standard And Custom Axis Domain Defaults link:presentationLink link:calculationLink link:definitionLink 00100 - Statement - CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 00200 - Statement - CONSOLIDATED STATEMENTS OF INCOME link:presentationLink link:calculationLink link:definitionLink 00400 - Disclosure - CONSOLIDATED STATEMENTS OF CASH FLOWS (Calc 2) link:presentationLink link:calculationLink link:definitionLink 00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS link:presentationLink link:calculationLink link:definitionLink 40401 - Disclosure - Accounts receivable, net (Details) link:presentationLink link:calculationLink link:definitionLink 40601 - Disclosure - Contracts in progress (Details) link:presentationLink link:calculationLink link:definitionLink 40701 - Disclosure - Property, plant and equipment and construction in progress (Details) link:presentationLink link:calculationLink link:definitionLink 40802 - Disclosure - Discontinued operations - Mexico project development (Details) link:presentationLink link:calculationLink link:definitionLink 40901 - Disclosure - Intangible assets - Costs and accumulated amortization (Details) link:presentationLink link:calculationLink link:definitionLink 40902 - Disclosure - Intangible assets - Amortization of intangible assets (Details) link:presentationLink link:calculationLink link:definitionLink 41002 - Disclosure - Leases - Components of lease cost (Details) link:presentationLink link:calculationLink link:definitionLink 41004 - Disclosure - Leases - Future lease payments (Details) link:presentationLink link:calculationLink link:definitionLink 41101 - Disclosure - Income taxes - Components of income before income taxes (Details) link:presentationLink link:calculationLink link:definitionLink 41102 - Disclosure - Income taxes - Provision for income taxes (Details) link:presentationLink link:calculationLink link:definitionLink 41103 - Disclosure - Income taxes - Reconciliation of federal tax rate to the effective rate (Details) link:presentationLink link:calculationLink link:definitionLink 41201 - Disclosure - Earnings per share (Details) link:presentationLink link:calculationLink link:definitionLink 00090 - Document - Document and Entity Information link:presentationLink link:calculationLink link:definitionLink 00105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 00205 - Statement - CONSOLIDATED STATEMENTS OF INCOME (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 00300 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY link:presentationLink link:calculationLink link:definitionLink 00405 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 40201 - Disclosure - Accounting policies - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 40202 - Disclosure - Accounting policies - Cash and cash equivalents (Details) link:presentationLink link:calculationLink link:definitionLink 40203 - Disclosure - Accounting policies - Property, plant and equipment (Details) link:presentationLink link:calculationLink link:definitionLink 40204 - Disclosure - Accounting policies - Goodwill and intangible assets (Details) link:presentationLink link:calculationLink link:definitionLink 40205 - Disclosure - Accounting policies - Investments and Other assets (Details) link:presentationLink link:calculationLink link:definitionLink 40206 - Disclosure - Accounting policies - Disaggregated revenue (Details) link:presentationLink link:calculationLink link:definitionLink 40301 - Disclosure - Cash and cash equivalents (Details) link:presentationLink link:calculationLink link:definitionLink 40402 - Disclosure - Accounts receivable, net - Allowance for doubtful accounts (Details) link:presentationLink link:calculationLink link:definitionLink 40501 - Disclosure - Inventory (Details) link:presentationLink link:calculationLink link:definitionLink 40702 - Disclosure - Property, plant and equipment and construction in progress - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 40801 - Disclosure - Discontinued operations - Mexico project development- Narratives (Details) link:presentationLink link:calculationLink link:definitionLink 40803 - Disclosure - Discontinued operations - Mexico project development - Financial Information (Details) link:presentationLink link:calculationLink link:definitionLink 40903 - Disclosure - Intangible assets (Details) link:presentationLink link:calculationLink link:definitionLink 41001 - Disclosure - Leases - Lease assets and liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 41104 - Disclosure - Income taxes - Net long-term deferred tax liability (Details) link:presentationLink link:calculationLink link:definitionLink 41105 - Disclosure - Income taxes - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 41401 - Disclosure - Segment information (Details) link:presentationLink link:calculationLink link:definitionLink 41402 - Disclosure - Segment information - Revenues earned by major geographic region and major customer (Details) link:presentationLink link:calculationLink link:definitionLink 41403 - Disclosure - Segment information - Property, plant and equipment, net by major geographic region (Details) link:presentationLink link:calculationLink link:definitionLink 41404 - Disclosure - Segment information - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 41501 - Disclosure - Cost of revenues and general and administrative expenses - Cost of revenues (Details) link:presentationLink link:calculationLink link:definitionLink 41502 - Disclosure - Cost of revenues and general and administrative expenses - General and administrative expenses (Details) link:presentationLink link:calculationLink link:definitionLink 41602 - Disclosure - Stock-based compensation - Stock option activity (Details) link:presentationLink link:calculationLink link:definitionLink 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:presentationLink link:calculationLink link:definitionLink 41604 - Disclosure - Stock-based compensation (Details) link:presentationLink link:calculationLink link:definitionLink 41701 - Disclosure - Retirement benefits (Details) link:presentationLink link:calculationLink link:definitionLink 41803 - Disclosure - Financial instruments - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 41901 - Disclosure - Commitments and contingencies (Details) link:presentationLink link:calculationLink link:definitionLink 42001 - Disclosure - Related party transactions (Details) link:presentationLink link:calculationLink link:definitionLink 42101 - Disclosure - Supplemental disclosure of cash flow information (Details) link:presentationLink link:calculationLink link:definitionLink 42102 - Disclosure - Supplemental disclosure of cash flow information - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 10101 - Disclosure - Principal activity link:presentationLink link:calculationLink link:definitionLink 10201 - Disclosure - Accounting policies link:presentationLink link:calculationLink link:definitionLink 10301 - Disclosure - Cash and cash equivalents link:presentationLink link:calculationLink link:definitionLink 10401 - Disclosure - Accounts receivable, net link:presentationLink link:calculationLink link:definitionLink 10501 - Disclosure - Inventory link:presentationLink link:calculationLink link:definitionLink 10601 - Disclosure - Contracts in progress link:presentationLink link:calculationLink link:definitionLink 10701 - Disclosure - Property, plant and equipment and construction in progress link:presentationLink link:calculationLink link:definitionLink 10801 - Disclosure - Discontinued operations link:presentationLink link:calculationLink link:definitionLink 10901 - Disclosure - Intangible assets link:presentationLink link:calculationLink link:definitionLink 11001 - Disclosure - Leases link:presentationLink link:calculationLink link:definitionLink 11101 - Disclosure - Income taxes link:presentationLink link:calculationLink link:definitionLink 11201 - Disclosure - Earnings per share link:presentationLink link:calculationLink link:definitionLink 11301 - Disclosure - Dividends link:presentationLink link:calculationLink link:definitionLink 11401 - Disclosure - Segment information link:presentationLink link:calculationLink link:definitionLink 11501 - Disclosure - Cost of revenues and general and administrative expenses link:presentationLink link:calculationLink link:definitionLink 11601 - Disclosure - Stock-based compensation link:presentationLink link:calculationLink link:definitionLink 11701 - Disclosure - Retirement benefits link:presentationLink link:calculationLink link:definitionLink 11801 - Disclosure - Financial instruments link:presentationLink link:calculationLink link:definitionLink 11901 - Disclosure - Commitments and contingencies link:presentationLink link:calculationLink link:definitionLink 12001 - Disclosure - Related party transactions link:presentationLink link:calculationLink link:definitionLink 12101 - Disclosure - Supplemental disclosure of cash flow information link:presentationLink link:calculationLink link:definitionLink 12201 - Disclosure - Impact of recent accounting standards link:presentationLink link:calculationLink link:definitionLink 12301 - Disclosure - Subsequent events link:presentationLink link:calculationLink link:definitionLink 20202 - Disclosure - Accounting policies (Policies) link:presentationLink link:calculationLink link:definitionLink 30203 - Disclosure - Accounting policies (Tables) link:presentationLink link:calculationLink link:definitionLink 30303 - Disclosure - Cash and cash equivalents (Tables) link:presentationLink link:calculationLink link:definitionLink 30403 - Disclosure - Accounts receivable, net (Tables) link:presentationLink link:calculationLink link:definitionLink 30503 - Disclosure - Inventory (Tables) link:presentationLink link:calculationLink link:definitionLink 30603 - Disclosure - Contracts in progress (Tables) link:presentationLink link:calculationLink link:definitionLink 30703 - Disclosure - Property, plant and equipment and construction in progress (Tables) link:presentationLink link:calculationLink link:definitionLink 30803 - Disclosure - Discontinued operations (Tables) link:presentationLink link:calculationLink link:definitionLink 30903 - Disclosure - Intangible assets (Tables) link:presentationLink link:calculationLink link:definitionLink 31003 - Disclosure - Leases (Tables) link:presentationLink link:calculationLink link:definitionLink 31103 - Disclosure - Income taxes (Tables) link:presentationLink link:calculationLink link:definitionLink 31203 - Disclosure - Earnings per share (Tables) link:presentationLink link:calculationLink link:definitionLink 31303 - Disclosure - Dividends (Tables) link:presentationLink link:calculationLink link:definitionLink 31403 - Disclosure - Segment information (Tables) link:presentationLink link:calculationLink link:definitionLink 31503 - Disclosure - Cost of revenues and general and administrative expenses (Tables) link:presentationLink link:calculationLink link:definitionLink 31603 - Disclosure - Stock-based compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 32103 - Disclosure - Supplemental disclosure of cash flow information (Tables) link:presentationLink link:calculationLink link:definitionLink 41003 - Disclosure - Leases - Supplemental cash flow information (Details) link:presentationLink link:calculationLink link:definitionLink 41301 - Disclosure - Dividends (Details) link:presentationLink link:calculationLink link:definitionLink 41601 - Disclosure - Stock-based compensation - Significant weighted average assumptions (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 13 cwco-20231231_cal.xml EX-101.CAL EX-101.DEF 14 cwco-20231231_def.xml EX-101.DEF EX-101.LAB 15 cwco-20231231_lab.xml EX-101.LAB Document and Entity Information [Abstract] Document and Entity Information Document Information [Table] Document Information [Line Items] Document Type Document Annual Report Document Period End Date Document Transition Report Entity File Number Entity Registrant Name Entity Incorporation, State or Country Code Entity Tax Identification Number Entity Address, Address Line One Entity Address, Address Line Two Entity Address, Address Line Three Entity Address, City or Town Entity Address, Postal Zip Code Entity Address, Country City Area Code Local Phone Number Title of 12(b) Security Security Exchange Name Trading Symbol Entity Voluntary Filers Entity Well-known Seasoned Issuer Entity Current Reporting Status Entity Interactive Data Current Entity Filer Category Entity Small Business Entity Emerging Growth Company Document Financial Statement Error Correction [Flag] ICFR Auditor Attestation Flag Auditor Name Auditor Firm ID Auditor Location Entity Shell Company Entity Common Stock, Shares Outstanding Entity Central Index Key Current Fiscal Year End Date Document Fiscal Year Focus Document Fiscal Period Focus Amendment Flag Entity Public Float CONSOLIDATED BALANCE SHEETS Statement [Table] Class of Stock [Axis] Class of Stock [Domain] Common Class A [Member] Common Class B [Member] Statement [Line Items] Assets [Abstract] ASSETS Assets, Current [Abstract] Current assets Current Cash and Cash Equivalents, at Carrying Value Cash and cash equivalents Cash and cash equivalents at end of period Accounts Receivable, Net, Current Accounts receivable, net Accounts receivable, net Inventory, Net Less current portion Inventory Prepaid Expense and Other Assets, Current Prepaid expenses and other current assets Contract with Customer, Asset, Net, Current Contract assets Contract assets Disposal Group, Including Discontinued Operation, Assets, Current Current assets of discontinued operations Assets, Current Total current assets Property, plant and equipment, net Property, Plant and Equipment, Net Property, Plant and Equipment, Net Property, Plant and Equipment, Net, Total Property, plant and equipment, net 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. Construction in Progress Construction in progress Construction in progress Inventory, Noncurrent Inventory (non-current) Inventory, noncurrent Equity Method Investments Investment in OC-BVI Goodwill Goodwill Intangible Assets, Net (Excluding Goodwill) Intangibles, net Intangible assets, net Intangible assets, net Operating Lease, Right-of-Use Asset Operating lease right-of-use assets Other Assets, Noncurrent Other assets Disposal Group, Including Discontinued Operation, Assets, Noncurrent Long-term assets of discontinued operations Assets Total assets Total assets Liabilities and Equity [Abstract] LIABILITIES AND EQUITY Liabilities, Current [Abstract] Current liabilities Current 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. Accounts Payable, Accrued Expenses and Other Current Liabilities, Current Accounts payable, accrued expenses and other current liabilities Accounts Payable, Related Parties, Current Accounts payable outstanding Accounts payable - related parties Accrued Employee Benefits, Current Accrued compensation Dividends Payable, Current Dividends payable Operating Lease, Liability, Current Less: current obligations Current maturities of operating leases Current maturities of operating leases Long-term Debt, Current Maturities Current portion of long-term debt Contract with Customer, Liability, Current Contract liabilities Contract liabilities Deferred Income, Current Deferred revenue Disposal Group, Including Discontinued Operation, Liabilities, Current Current liabilities of discontinued operations Liabilities, Current Total current liabilities Long-term Debt, Excluding Current Maturities Long-term debt, noncurrent Deferred Income Tax Liabilities, Net Deferred tax liabilities Net deferred tax liability Noncurrent lease obligations Operating Lease, Liability, Noncurrent Noncurrent operating leases Other Liabilities, Noncurrent Other liabilities Liabilities Total liabilities Commitments and Contingencies Commitments and contingencies Equity Stockholders' Equity Attributable to Parent [Abstract] Consolidated Water Co. Ltd. stockholders' equity Preferred Stock, Value, Issued Redeemable preferred stock, $0.60 par value. Authorized 200,000 shares; issued and outstanding 44,297 and 34,383 shares, respectively Preferred stock value Common Stock, Value, Issued Common stock value Additional Paid in Capital Additional paid-in capital Retained Earnings (Accumulated Deficit) Retained earnings Stockholders' Equity Attributable to Parent Total Consolidated Water Co. Ltd. stockholders' equity Stockholders' Equity Attributable to Noncontrolling Interest Non-controlling interests Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest Balance Balance Total equity Liabilities and Equity Total liabilities and equity Preferred Stock, Par or Stated Value Per Share Redeemable preferred stock, par value (in dollars per share) Preferred Stock, Shares Authorized Redeemable preferred stock, authorized Preferred Stock, Shares Issued Redeemable preferred stock, issued Preferred Stock, Shares Outstanding Redeemable preferred stock, outstanding Common Stock, Par or Stated Value Per Share Common stock, par value (in dollars per share) Common Stock, Shares Authorized Common stock, authorized Common Stock, Shares, Issued Common stock, issued Common Stock, Shares, Outstanding Common stock, outstanding CONSOLIDATED STATEMENTS OF INCOME Total Revenue Revenues Revenue Revenue Cost of Revenue Cost of revenue (including related party expense of $0 and $2,694,810 in 2023 and 2022) Cost of revenue Gross Profit Gross profit Gross profit General and Administrative Expense General and administrative expenses General and administrative expenses (including related party expense of $0 and $96,924 in 2023 and 2022) Gain (Loss) on Sale of Assets and Asset Impairment Charges Loss on asset dispositions and impairments, net Gain (loss) on asset dispositions and impairments, net Operating Income (Loss) Income from operations Nonoperating Income (Expense) [Abstract] Other income (expense): Interest Income, Other Interest income Interest Expense Interest expense This item represents the entity's share of profit or (loss) from its unconsolidated equity method investee. Profit Loss From Subsidiaries Profit-sharing income from OC-BVI Income (Loss) from Equity Method Investments Equity in the earnings of OC-BVI Unrealized Gain (Loss) on Derivatives Loss (gain) on net put/call option Loss on put/call options Other Nonoperating Income (Expense) Other Nonoperating Income (Expense) Other income, net Other income, net Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Income before income taxes Income before income taxes Income Tax Expense (Benefit) Benefit for income taxes Total provision (benefit) Provision for income taxes Income (Loss) from Continuing Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest Net income from continuing operations Income (Loss) from Continuing Operations, Net of Tax, Attributable to Noncontrolling Interest Income from continuing operations attributable to non-controlling interests Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders Income (Loss) from Continuing Operations, Net of Tax, Attributable to Parent Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders Income (Loss) from Discontinued Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest Total loss from discontinued operations Total loss from discontinued operations Net income attributable to Consolidated Water Co. Ltd. stockholders Earnings Per Share, Basic [Abstract] Basic earnings (loss) per common share attributable to Consolidated Water Co. Ltd. common stockholders Income (Loss) from Continuing Operations, Per Basic Share Increase in basic earnings Continuing operations Discontinued Operation, Income (Loss) from Discontinued Operation, Net of Tax, Per Basic Share Discontinued operations Earnings Per Share, Basic Basic earnings per share Earnings Per Share, Diluted [Abstract] Diluted earnings (loss) per common share attributable to Consolidated Water Co. Ltd. common stockholders Income (Loss) from Continuing Operations, Per Diluted Share Increase in diluted earnings Continuing operations Discontinued Operation, Income (Loss) from Discontinued Operation, Net of Tax, Per Diluted Share Discontinued operations Earnings Per Share, Diluted Diluted earnings per share Common Stock, Dividends, Per Share, Declared Dividends declared per common and redeemable preferred shares Weighted Average Number of Shares Outstanding, Diluted [Abstract] Weighted average number of common shares used in the determination of: Weighted Average Number of Shares Outstanding, Basic 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) Basic earnings per share Weighted Average Number of Shares Outstanding, Diluted Weighted average number of shares used for determining diluted earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders Diluted earnings per share Income Statement Location [Axis] Income Statement Location [Domain] Cost of revenue. General and administrative expense. Related Party Transaction, Purchases from Related Party Purchases of services Purchases from related parties CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Redeemable preferred stock [Member] Equity Components [Axis] Equity Component [Domain] Preferred stock [Member] Common stock [Member] Additional paid-in capital [Member] Retained earnings [Member] Non controlling interests [Member] Shares, Outstanding Balance (in shares) Balance (in shares) Stock Issued During Period, Value, New Issues Issuance of share capital Stock Issued During Period, Shares, New Issues Issuance of share capital (in shares) Refers to purchase of remaining non-controlling interests in PERC. Purchase of Remaining Non-Controlling Interests in PERC Stock Issued During Period, Shares, Acquisitions Shares of the Company's common stock Purchase of remaining non-controlling interests in PERC (in shares) Stock Issued During Period, Value, Conversion of Convertible Securities Conversion of preferred stock Stock Issued During Period, Shares, Conversion of Convertible Securities Stock Issued During Period, Shares, Conversion of Convertible Securities Conversion of preferred stock (in shares) Stock Redeemed or Called During Period, Value Buyback of preferred stock Stock Redeemed or Called During Period, Shares Buyback of preferred stock (in shares) Net income Net Income (Loss), Including Portion Attributable to Noncontrolling Interest Net income Stock Issued During Period, Value, Stock Options Exercised Exercise of options Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period Exercised - Options Exercise of options (in shares) Dividends, Cash Dividends declared Share-Based Payment Arrangement, Noncash Expense Compensation expense relating to stock and stock option grants CONSOLIDATED STATEMENTS OF CASH FLOWS Net Cash Provided by (Used in) Operating Activities [Abstract] Cash flows from operating activities Amount after tax of income (loss) from continuing operations including portion attributable to the noncontrolling interest. Income from Continuing Operations Attributable to Non-Controlling Interests Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Adjustments to reconcile net income to net cash provided by operating activities Amount of impairment attributable to disposal group, including, but not limited to, discontinued operation. Disposal Group, Including Discontinued Operation, Other Expense, Impairment Impairment loss for Mexico assets - discontinued operations Disposal Group, Including Discontinued Operation, Foreign Currency Translation Gains (Losses) Foreign currency transaction adjustment - discontinued operations Disposal Group, Not Discontinued Operation, Gain (Loss) on Disposal Loss from discontinued operations Depreciation, Depletion and Amortization, Nonproduction Depreciation and amortization Deferred Income Tax Expense (Benefit) Deferred income tax benefit Provision for Doubtful Accounts Provision for credit losses Share-based Compensation Compensation expense relating to stock and stock option grants 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. Gain on Asset Dispositions and Impairments, Net This items represents the entity's equity in earnings and profit sharing rights earned for the period from its unconsolidated equity method investee. Income Loss From Equity Method Investments And Subsidiaries Profit-sharing and equity in earnings of OC-BVI Proceeds from Equity Method Investment, Distribution Distribution of earnings from OC-BVI Increase (Decrease) in Accounts Receivable and Other Operating Assets Accounts receivable Amount of increase (decrease) in contract assets. Increase (Decrease) in Contract Assets Contract assets Increase (Decrease) in Inventories Inventory Increase (Decrease) in Prepaid Expense and Other Assets Prepaid expenses and other assets The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and in the aggregate amount of expenses incurred but not yet paid. And in current liabilities classified as other Increase Decrease In Accounts Payable and Accrued Expenses and Other Current Liabilities Accounts payable (including related parties), accrued expenses and other current liabilities Amount of increase (decrease) in obligation to transfer good or service for which consideration has been received or is receivable. Increase Decrease in Contract Liability Contract liabilities Increase (Decrease) in Operating Liabilities Operating lease liabilities Increase (Decrease) in Deferred Revenue Deferred revenue Net Cash Provided by (Used in) Operating Activities, Continuing Operations Net cash provided by operating activities - continuing operations Cash Provided by (Used in) Operating Activities, Discontinued Operations Net cash used in operating activities - discontinued operations Net Cash Provided by (Used in) Operating Activities Net cash provided by operating activities Net Cash Provided by (Used in) Investing Activities [Abstract] Cash flows from investing activities The cash outflow from purchase of certificates of deposit. Payments to Acquire Certificates of Deposit Purchase of certificate of deposit Proceeds from Sale and Maturity of Held-to-Maturity Securities Maturity of certificate of deposit Payments to Acquire Property, Plant, and Equipment Additions to property, plant and equipment and construction in progress Proceeds from Sale of Property, Plant, and Equipment Proceeds from asset dispositions Payments to Acquire Businesses, Net of Cash Acquired Acquisition of REC, net of cash acquired Payments to Acquire Additional Interest in Subsidiaries Purchase of non-controlling interest in PERC Net Cash Provided by (Used in) Investing Activities Net cash used in investing activities Net Cash Provided by (Used in) Financing Activities [Abstract] Cash flows from financing activities Payments of Ordinary Dividends, Common Stock Dividends paid to common shareholders Payments of Ordinary Dividends, Preferred Stock and Preference Stock Dividends paid to preferred shareholders Payments to Noncontrolling Interests Dividends paid to non-controlling interests Buyback of redeemable preferred stock Proceeds from (Repurchase of) Redeemable Preferred Stock Proceeds from Stock Options Exercised Proceeds received from exercise of stock options Repayments of Long-term Debt Principal repayments on long-term debt Net Cash Provided by (Used in) Financing Activities Net cash used in financing activities Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect Net increase (decrease) in cash and cash equivalents Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents. Cash and cash equivalents at end of period Cash and cash equivalents at beginning of period Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations Less: cash and cash equivalents at end of period - discontinued operations Cash and cash equivalents at beginning of period - discontinued operations Noncash Investing and Financing Items [Abstract] Non-cash transactions: Non-cash transactions: Stock Issued During Period, Value, Purchase of Assets Issuance of 368,383 and 0, respectively, shares of common stock for the purchase of non-controlling interests in PERC Issuance of 68,864 and 72,597, respectively, shares of common stock for services rendered Conversion of Stock, Amount Converted Conversion (on a one-to-one basis) of 8,848 and 6,585, respectively, shares of redeemable preferred stock to common stock Right-of-Use Asset Obtained in Exchange for Operating Lease Liability Right-of-use assets obtained in exchange for new operating lease liabilities Debt Issuance Costs Incurred During Noncash or Partial Noncash Transaction Purchase of equipment through issuance of long-term debt Stock Issued During Period, Shares, Issued for Services Issuance of 44,873 and 41,830, respectively, shares of common stock for services rendered Conversion (on a one-to-one basis) of 8,848 and 6,585, respectively, shares of redeemable preferred stock to common stock Principal activity Nature of Operations [Text Block] Principal activity Accounting policies Significant Accounting Policies [Text Block] Accounting policies Cash and cash equivalents Cash and Cash Equivalents Disclosure [Text Block] Cash and cash equivalents Accounts receivable, net. Loans, Notes, Trade and Other Receivables Disclosure [Text Block] Accounts receivable, net Inventory Inventory Disclosure [Text Block] Inventory Contracts in progress. Revenue from Contract with Customer [Text Block] Contracts in progress Property, plant and equipment and construction in progress Property, Plant and Equipment Disclosure [Text Block] Property, plant and equipment and construction in progress Discontinued operations Disposal Groups, Including Discontinued Operations, Disclosure [Text Block] Discontinued operations - Mexico project development Intangible assets Intangible Assets Disclosure [Text Block] Intangible assets Leases Lessee, Operating Leases [Text Block] Leases Income taxes Income Tax Disclosure [Text Block] Income taxes Earnings per share Earnings Per Share [Text Block] Earnings per share Dividends. The entire disclosure for dividends. Dividends [Text Block] Dividends Segment information Segment Reporting Disclosure [Text Block] Segment information Cost of revenues and general and administrative expenses Tabular disclosure for cost of revenues and general and administrative expenses. Cost Of Revenues And General And Administrative Expenses [Text Block] Cost of revenues and general and administrative expenses Stock-based compensation Share-based Payment Arrangement [Text Block] Stock-based compensation Retirement benefits Pension and Other Postretirement Benefits Disclosure [Text Block] Retirement benefits Financial instruments Financial Instruments Disclosure [Text Block] Financial instruments Commitments and contingencies. Commitments and Contingencies Disclosure [Text Block] Commitments and contingencies Related party transactions Related Party Transactions Disclosure [Text Block] Related party transactions Supplemental disclosure of cash flow information Cash Flow, Supplemental Disclosures [Text Block] Supplemental disclosure of cash flow information Impact of recent accounting standards New Accounting Pronouncements and Changes in Accounting Principles [Text Block] Impact of recent accounting standards Subsequent events Subsequent Events [Text Block] Subsequent events Basis of Accounting, Policy [Policy Text Block] Basis of preparation Use of Estimates, Policy [Policy Text Block] Use of estimates Consolidation, Policy [Policy Text Block] Basis of consolidation Foreign Currency Transactions and Translations Policy [Policy Text Block] Foreign currency Cash and Cash Equivalents, Policy [Policy Text Block] Cash and cash equivalents Trade and Other Accounts Receivable, Policy [Policy Text Block] Accounts receivable Loans and Leases Receivable, Allowance for Loan Losses Policy [Policy Text Block] Allowance for credit losses Inventory, Policy [Policy Text Block] Inventory Revenue from Contract with Customer [Policy Text Block] Contract assets and liabilities Property, Plant and Equipment, Policy [Policy Text Block] Property, plant and equipment, net Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block] Long-lived assets Goodwill and Intangible Assets, Policy [Policy Text Block] Goodwill and intangible assets Investment, Policy [Policy Text Block] Investments Disclosure of accounting policy for other assets. Other Assets [Policy Text Block] Other assets Income Tax, Policy [Policy Text Block] Income taxes Revenue Recognition, Policy [Policy Text Block] Revenue recognition Reclassification, Policy [Policy Text Block] Comparative amounts Disclosure of accounting policy for schedule of property plant and equipment useful life. Schedule Of Property Plant And Equipment Useful Life [Table Text Block] Schedule of Estimated useful lives Disaggregation of Revenue [Table Text Block] Schedule of Disaggregation of revenue Schedule of Cash and Cash Equivalents [Table Text Block] Schedule of Cash and cash equivalents Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block] Schedule of Accounts receivable Allowance for Credit Losses on Financing Receivables [Table Text Block] Schedule of Allowance for doubtful accounts Schedule of Inventory, Noncurrent [Table Text Block] Schedule of Inventory Tabular disclosure for revenue recognized and amounts billed with regard to contracts with customers in progress. Contract With Customer, In Progress, Revenue Recognized And Amounts Billed [Table Text Block] Summary of information relative to revenue recognized and amounts billed on contracts in progress Property, Plant and Equipment [Table Text Block] Schedule of Property, plant and equipment and construction in progress Disposal Groups, Including Discontinued Operations [Table Text Block] Schedule of financial information for Mexico project development Schedule of Finite-Lived Intangible Assets [Table Text Block] Schedule of Finite-Lived Intangible Assets Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block] Schedule of Finite-Lived Intangible Assets, Future Amortization Expense Disclosure of accounting policy for lessee operating lease related assets and liabilities. Lessee Operating Lease related Assets And Liabilities [Table Text Block] Schedule of lease-related assets and liabilities Schedule of Lease, Cost [Table Text Block] Schedule of Lease, Cost Schedule of Cash Flow, Supplemental Disclosures [Table Text Block] Schedule of Cash Flow, Supplemental Lessee, Operating Lease, Liability, Maturity [Table Text Block] Schedule of future lease payments relating to the Company's operating lease liabilities Schedule of Income before Income Tax, Domestic and Foreign [Table Text Block] Schedule of components of income before income taxes Schedule of Components of Income Tax Expense (Benefit) [Table Text Block] Schedule of provision for income taxes deferred tax benefit relating to U.S. operations Schedule of Effective Income Tax Rate Reconciliation [Table Text Block] Schedule of reconciliation of federal tax rate to the effective rate Schedule of Deferred Tax Assets and Liabilities [Table Text Block] Schedule of tax effects of significant items net long-term deferred tax assets liability Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Schedule of computation of basic and diluted EPS Dividends Declared [Table Text Block] Schedule of dividends Schedule of Segment Reporting Information, by Segment [Table Text Block] Schedule of segment reporting information, by segment Schedule of revenue from external customers attributed to Foreign Countries by Geographic Area [Table Text Block] Schedule of revenues earned by major geographic region Long-lived Assets by Geographic Areas [Table Text Block] Schedule of long-lived assets by geographic areas Tabular disclosure for cost of revenues and general and administrative expenses. Cost Of Revenues And General And Administrative Expenses [Table Text Block] Schedule of cost of revenues and general and administrative expenses Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block] Schedule of significant weighted average assumptions Share-based Compensation, Stock Options, Activity [Table Text Block] Schedule of company's stock option activity Disclosure of Share-based Compensation Arrangements by Share-based Payment Award [Table Text Block] Schedule of weighted average fair value of options at the date of grant and the intrinsic value 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. Schedule of Supplemental Disclosure of Cash Flow Information Schedule of Supplemental disclosure of cash flow information Segments [Axis] Segments [Domain] Represents the information pertaining to Retail. Retail [Member] Bulk [Member] Services [Member] Manufacturing Units [Member] Business Acquisition [Axis] Business Acquisition, Acquiree [Domain] This member stands for PERC Water Corporation. PERC Water Corporation 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. Ramey Environmental Compliance, Inc (REC) Ownership [Axis] Ownership [Domain] Information relating Kalaeloa Desalco Kalaeloa Desalco Business Acquisition, Percentage of Voting Interests Acquired Ownership interest acquired Noncontrolling Interest, Ownership Percentage by Parent Ownership interest held The processing capacity per day seawater reverse osmosis desalination plant. Seawater Reverse Osmosis Desalination Plant Per Day Processing Capacity Business Combination, Consideration Transferred Amount of consideration paid Interest Costs Capitalized Interest Capitalized Cash and Cash Equivalents [Axis] Cash and Cash Equivalents [Domain] Certificate of deposit Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents [Abstract] Foreign Currency Transaction Gain (Loss), before Tax Net foreign currency gains Cash Equivalents, at Carrying Value Cash and cash equivalents Short term deposits Cash, Uninsured Amount Deposits Represents the amount cash held in foreign bank accounts including restricted cash. Cash And Restricted Cash Equivalents Held In Foreign Bank Cash held in foreign bank accounts Amount of deposits held in foreign banks, as stated in equivalent United States dollars. Deposits held in foreign bank Property, Plant and Equipment, Type [Axis] Property, Plant and Equipment, Type [Domain] Building [Member] Plant And Equipment [Member] Distribution Systems [Member] Office furniture, fixtures and equipment [Member] Vehicles [Member] Lab equipment [Member] Range [Axis] Range [Domain] Maximum [Member] Minimum [Member] Property, Plant and Equipment, Useful Life Property, Plant and Equipment, Estimated Useful Lives Represents information pertaining to Aerex Industries, Inc. Aerex Fair Value Determining Method [Axis] Fair Value Determining Method [Domain] Discounted Cash Flow Method [Member] Guideline Public Company Method [Member] Represents the estimated fair value of reporting segments. Estimated Fair Value Percentage Segment Reporting Information Estimated Fair Value Percentage Segment Reporting Information Represents the exceeded percentage of estimated fair value of reporting segments. Estimated Fair Value carrying Amount Exceeded Percentage Estimated Fair Value Carrying Amount Exceeded Percentage Represents the exceeded value of estimated fair value of reporting segments. Estimated Fair Value carrying Amount Exceeded Value Capitalized Engineering Labor and Materials Cost [Member] Represents the conditions to recognize the investment value in cost. Criteria For Recognizing Investment At Cost Criteria for recognizing investment at cost Equity Method Investment, Additional Information Accumulated Amortization of Other Deferred Costs Other Assets Amortization of Other Deferred Charges The amount required to reduce the amount of water lost by the public water distribution system. Amount Required To Reduce Amount Of Water Lost By Public Water Distribution System Amount required to reduce the amount of water lost by the public water distribution system Retail revenue [Member] Bulk revenue [Member] Services revenue [Member] Manufacturing revenue [Member] NA Construction Sevices [Member] NA Operations and Maintenance [Member] NA Design and Consulting Services [Member] Timing of Transfer of Good or Service [Axis] Timing of Transfer of Good or Service [Domain] Transferred over Time [Member] Transferred at Point in Time [Member] Change in Accounting Estimate by Type [Axis] Change in Accounting Estimate, Type [Domain] Change in Accounting Method Accounted for as Change in Estimate [Member] The number of days after consumption billings are collected. Number Of Days After Consumption Billings Are Collected Number of days after consumption billings are collected The number of days after consumption billings are considered past due. Number Of Days After Consumption Billings Are Considered Past Due Number of days after consumption billings are considered past due Schedule of Cash and Cash Equivalents [Table] Currency [Axis] All Currencies [Domain] United States dollar [Member] Cayman Islands dollar [Member] Bahamian dollar [Member] Cash and Cash Equivalents [Line Items] Cash Bank accounts Schedule of Accounts, Notes, Loans and Financing Receivable [Table] Accounts, Notes, Loans and Financing Receivable [Line Items] 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). Accounts Receivable Trade Current Trade accounts receivable Due from Affiliate, Current Receivable from OC-BVI 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). Accounts Receivable Other Current Other accounts receivable Accounts Receivable, Gross, Current Accounts Receivable, Gross, Current Allowance for Doubtful Accounts Receivable, Current Allowance for doubtful accounts Ending allowance for doubtful accounts Opening allowance for doubtful accounts Allowance for Doubtful Accounts Receivable, Write-offs Accounts written off during the year Accounts Receivable, Allowance for Credit Loss, Recovery Recovery of accounts written off Inventory, Current [Table] Spare parts stock [Member] na Raw Materials [Member] Consumables stock [Member] Water stock [Member] Inventory [Line Items] Inventory, Gross Total inventory Disclosure of information about revenue recognized and amounts billed with regard to contracts with customers in progress. Contract With Customer, In Progress, Revenue Recognized And Amounts Billed, Disclosure [Table] Information by contract with customer. Contract With Customer [Axis] Information by contract with customer. Contract With Customer [Domain] This member stands for contract with customer, in progress. Contracts in progress Scenario [Axis] Scenario, Unspecified [Domain] Forecast [Member] 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. Contract With Customer, In Progress, Revenue Recognized And Amounts Billed, Disclosure [Line Items] Revenue from Contract with Customer, Including Assessed Tax Revenues recognized to date on contracts in process The amount billed for contracts with customers during the period. Contract With Customer, Amount Billed Amounts billed to date on contracts in process Amount of retainage with contract for customers. Contract With Customer Retainage Retainage The net amount of overbillings for contracts with customers, during the period. Contract With Customer, Net Overbillings Net contract asset (liability) Contract with Customer, Liability, Revenue Recognized No definition available. Balance Sheet location Property, Plant and Equipment [Table] Land [Member] Leasehold Improvements [Member] Property, Plant and Equipment [Line Items] Property, Plant and Equipment, Gross Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Less accumulated depreciation Construction in Progress, Gross Construction in progress Amount of capital commitments outstanding. Capital Commitments Represents the amount of construction in progress placed in service. Construction In Progress Placed In Service Depreciation Schedule of Investments [Table] NSC Agua [Member] Option agreement [Member] Type Of Phases [Axis] Type Of Phases [Domain] First Phase [Member] Second Phase [Member] Investment, Name [Axis] Investment, Name [Domain] Aguas de Rosarito S.A.P.I. de C.V [Member] Schedule of Investments [Line Items] Noncontrolling Interest, Ownership Percentage by Noncontrolling Owners Total percentage of ownership interest in an acquired company. Total Percentage Of Ownership Interest In An Acquired Company Represents the amount of bond posted. Bond Posted Amount of bond posted Area of Land Equity Method Investment, Ownership Percentage The period in which construction must be completed. Period In Which Construction Must Be Completed Period in which construction must be completed The period required to operate and maintain the plant and aqueduct. Period Required To Operate And Maintain Plant And Aqueduct The cash outflow from the acquisition of real estate intended to generate income for the owner; excludes land acquired for use by the owner. Payment For Land And Right Of Way Held For development Payments for land and rights of way held for development Number of days to submit list of non-recoverable expenses made. Number of Days to Submit List of Non-Recoverable Expenses Number of days to submit list of non-recoverable expenses made Refers to non-recoverable expense in discontinued operations. Discontinued Operations, Non-Recoverable Expenses Amount of non-recoverable expenses Loss Contingency, Damages Sought, Value Litigation Settlement, Expense Disposal Groups, Including Discontinued Operations [Table] Disposal Group Classification [Axis] Disposal Group Classification [Domain] Discontinued Operations. Disposal Group Name [Axis] Disposal Group Name [Domain] Represent the information pertaining to Mexico Project Development. Mexico Project Development Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items] Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items] Disposal Group, Including Discontinued Operation, Cash and Cash Equivalents Cash Disposal Group, Including Discontinued Operation, Accounts, Notes and Loans Receivable, Net Accounts receivable Disposal Group, Including Discontinued Operation, Prepaid and Other Assets, Current Prepaid expenses and other current assets 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. Disposal Group, Including Discontinued Operation, Land And Rights Of Way Land Disposal Group, Including Discontinued Operation, Other Assets, Noncurrent Other assets Disposal Group, Including Discontinued Operation, Assets Assets of discontinued operations Total assets of discontinued operations Disposal Group, Including Discontinued Operation, Liabilities Total liabilities of discontinued operations Discontinued Operation, Income (Loss) from Discontinued Operation, before Income Tax Loss from operations Amount of income (loss) from a discontinued operation. Income Loss from Discontinued Operations Loss from discontinued operations Less discontinued operations Schedule of Indefinite-Lived Intangible Assets [Table] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets, Major Class Name [Domain] Non-compete agreements Non-compete agreement Customer relationships Represents information pertaining to management contracts. Facility management contracts Indefinite-lived Intangible Assets [Axis] Indefinite-lived Intangible Assets, Major Class Name [Domain] Trade name Indefinite-lived Intangible Assets [Line Items] Intangible Assets, Net (Excluding Goodwill) [Abstract] Cost Finite-Lived Intangible Assets, Gross Finite-Lived Intangible Assets, Gross Amortization [Abstract] Accumulated amortization Finite-Lived Intangible Assets, Accumulated Amortization Finite-Lived Intangible Assets, Accumulated Amortization Finite-Lived Intangible Assets [Line Items] Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months 2024 Finite-Lived Intangible Assets, Amortization Expense, Year Two 2025 Finite-Lived Intangible Assets, Amortization Expense, Year Three 2026 Finite-Lived Intangible Assets, Amortization Expense, Year Four 2027 Finite-Lived Intangible Assets, Amortization Expense, Year Five 2028 Finite-Lived Intangible Assets, Amortization Expense, after Year Five Thereafter Finite-Lived Intangible Assets, Net Finite Lived Intangible Assets Net This member stands for Ramey Environmental Compliance, Inc. Ramey Environmental Compliance, Inc. Amortization of Intangible Assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill Fair value of certain intangible assets Acquired Finite-lived Intangible Assets, Weighted Average Useful Life Balance Sheet Location [Axis] Balance Sheet Location [Domain] Prepaid Expenses and Other Current Assets [Member] Amount of Operating Lease Assets Current. Operating Lease Assets Current Operating lease assets, current 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. Disposal Group, Including Discontinued Operation, Lease, Current Current assets of discontinued operations Assets, Noncurrent [Abstract] Noncurrent Amount of lessee's right to use underlying asset net under operating lease. Operating Lease Right of Use Asset Net Total lease right-of-use assets Liabilities [Abstract] LIABILITIES 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. Disposal Group Including Discontinued Operation Lease Current Liabilities Current liabilities of discontinued operations Liabilities, Noncurrent [Abstract] Noncurrent Present value of lessee's discounted obligation for lease payments from operating lease, including discontinued operations. Operating Lease, Liability, Including Discontinued Operations Total lease liabilities Operating Lease, Weighted Average Remaining Lease Term Operating leases, weighted average remaining lease term Operating Lease, Weighted Average Discount Rate, Percent Operating leases, weighted average discount rate Operating Lease, Cost Operating lease costs Short-term Lease, Cost Short-term lease costs Amount of operating lease cost related to discontinued operations, excluding expense for lease with term of one month or less. Operating Lease Costs Discontinued Operations Lease costs - discontinued operations Lease, Cost Total lease costs Operating Lease, Payments Operating cash outflows for operating leases Amount of cash outflow from operating lease discontinued operations, excluding payments to bring another asset to condition and location necessary for its intended use. Operating Lease, Discontinued Operations, Payments Operating cash flows from operating leases - discontinued operations Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months 2023 Lessee, Operating Lease, Liability, Payments, Due Year Two 2024 Lessee, Operating Lease, Liability, Payments, Due Year Three 2025 Lessee, Operating Lease, Liability, Payments, Due Year Four 2026 Lessee, Operating Lease, Liability, Payments, Due Year Five 2027 Lessee, Operating Lease, Liability, Payments, Due after Year Five Thereafter Lessee, Operating Lease, Liability, Payments, Due Total future lease payments Lessee, Operating Lease, Liability, Undiscounted Excess Amount Less: imputed interest Present value of lessee's discounted obligation for lease payments from operating lease, continuing operations. Operating Lease Liabilities, Continuing Operations Total lease obligations 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. Income Loss from Continuing Operations before Income Taxes, Foreign Not Subject To Income Taxes Foreign (not subject to income taxes) Income (Loss) from Continuing Operations before Income Taxes, Foreign Mexico Income (Loss) from Continuing Operations before Income Taxes, Domestic United States Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest Income before income taxes Current Federal, State and Local, Tax Expense (Benefit) [Abstract] Current: Current Federal Tax Expense (Benefit) Federal Current State and Local Tax Expense (Benefit) State Current Income Tax Expense (Benefit) Total Deferred Federal, State and Local, Tax Expense (Benefit) [Abstract] Deferred: Deferred Federal Income Tax Expense (Benefit) Federal Deferred State and Local Income Tax Expense (Benefit) State Deferred Income Taxes and Tax Credits Total Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent U.S. statutory federal rate Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent State taxes, net of federal effect Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Percent Nontaxable foreign income Effective Income Tax Rate Reconciliation, Tax Credit, Research, Percent Research & Development Tax Credit 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. Effective Income Tax Rate Reconciliation Permanent Items Permanent items Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Percent Valuation allowance for deferred tax assets Effective Income Tax Rate Reconciliation, Percent Total U.S. statutory federal tax rate to the effective rate Deferred Tax Assets, Net [Abstract] Deferred tax assets: Deferred Tax Assets, Tax Credit Carryforwards, Research Research & development tax credits Deferred Tax Assets, Operating Loss Carryforwards, Foreign Operating loss carryforwards - Mexico Deferred Tax Assets, Capital Loss Carryforwards Loss carry forward Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Accrued Liabilities Accrued compensation Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from operating lease liabilities. Deferred Tax Assets, Tax Deferred Expense, Operating Lease Liabilities Operating lease liabilities Deferred Tax Assets, in Process Research and Development Capitalized research expenditures Deferred Tax Assets, Other Other Deferred Tax Assets, Valuation Allowance Valuation allowances Amount before allocation of valuation allowances of deferred tax asset attributable to land basis differences. Deferred Tax Assets Land Basis Difference Land basis difference - Mexico Amount before allocation of valuation allowances of deferred tax asset attributable to start-up costs. Deferred Tax Assets Start-up Costs Start-up costs - Mexico Deferred Tax Assets, Net of Valuation Allowance Deferred tax assets Deferred Tax Liabilities, Net [Abstract] Deferred tax liabilities: Deferred Tax Liabilities, Property, Plant and Equipment Property and equipment Deferred Tax Liabilities, Intangible Assets Intangible assets Amount before allocation of valuation allowances of deferred tax liabilities attributable to deductible temporary differences from operating lease right-of-use assets. Deferred Tax Liabilities, Operating Lease Right-Of-Use Assets Operating lease right-of-use assets Deferred tax liabilities Deferred Tax Liabilities, Gross Income Tax Authority [Axis] Income Tax Authority [Domain] Domestic Tax Authority [Member] State and Local Jurisdiction [Member] Operating Loss Carryforwards Dividends, Preferred Stock Less: preferred stock dividends Net Income (Loss) from Continuing Operations Available to Common Shareholders, Basic Net income from continuing operations available to common shares in the determination of basic earnings per common share Net Income (Loss) Available to Common Stockholders, Basic Net income available to common shares in the determination of basic earnings per common share Incremental Common Shares Attributable to Dilutive Effect of Conversion of Preferred Stock Weighted average number of preferred shares outstanding during the period (in shares) Incremental Common Shares Attributable to Dilutive Effect of Call Options and Warrants Potential dilutive effect of unexercised options and unvested stock grants Aggregate dividends declared during the period for each share of common stock and redeemable preferred stock outstanding. Dividends Per Share Declared Schedule of Segment Reporting Information, by Segment [Table] Segment Reporting Information [Line Items] Amount of inventory current and non current. Inventory Current And Noncurrent Inventory, current and non-current Amount classified as assets attributable to continued operation. Assets Continued Operation Total segment assets Geographical [Axis] Geographical [Domain] Cayman Islands [Member] Bahamas [Member] United States [Member] Management Services Agreement With OC-BVI [Membre] Water and Sewerage Corporation [Member] Represents information pertaining to customer. One Customer [Member] Percentage of revenue generated from a single external customer that accounts for 10 percent or more of an entity's revenues. Entity Wide Revenues Major Customer Percentage Percentage of consolidated revenues Depreciation, Depletion and Amortization Cost Of Revenues And General And Administrative Expenses [Table] Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Domain] NA Subcontractor and other project costs Employee costs [Member] Fuel oil [Member] Electricity [Member] Maintenance [Member] Insurance [Member] Retail license royalties [Member] Cost of plant sales [Member] Other [Member] Cost of revenues and general and administrative expenses [Line Items] Professional fees [Member] Directors' fees and expenses [Member] office rent Office Rent [Member] Amortization of intangibles [Member] Investor relations . Investor Relations [Member] Business development expenses. Business Development Expenses [Member] Bad debt expense. Bad Debt Expense [Member] Computer supplies, software licenses. Computer Supplies, Software Licenses [Member] Bank charges. Bank Charges [Member] Depreciation [Member] Other Credit Device [Member] Other [Member]. Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate Risk free interest rate Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term Expected option life (years) Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate Expected volatility Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate Expected dividend yield Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Option Indexed to Issuer's Equity, Type [Axis] Option Indexed to Issuer's Equity, Type [Domain] Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number Outstanding at the ending of period -Options Outstanding at the beginning of period -Options Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross Number of stock grant rights issued Granted - Options Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period Forfeited/expired - Options Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price Outstanding-Weighted Average Exercise Price at the ending of period - Options Outstanding-Weighted Average Exercise Price at the beginning of period - Options Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price Granted-Weighted Average Exercise Price Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price Exercised-Weighted Average Exercise Price Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period, Weighted Average Exercise Price Forfeited/expired-Weighted Average Exercise Price Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term Outstanding-Weighted Average Remaining Contractual Life (Years) Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value Outstanding-Aggregate Intrinsic Value Exercise Price Range [Axis] Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Domain] Below Market Price [Member] At Market Price [Member] Above Market Price [Member] Title of Individual [Axis] Relationship to Entity [Domain] Management Employees [Member] Employees [Member] Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value Equity Incentive Plan2008 [Member] Common Stock Options [Member] Non Executive Directors Share Plan [Member] Non-Performance-Based Grants [Member] Performance-Based Grants [Member] Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period 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. Share Based Compensation Arrangement By Share Based Payment Award Measurement Period Cumulative financial performance targets measurement period Shares Granted, Value, Share-based Payment Arrangement, after Forfeiture Number of vested shares issued Allocated Share-based Compensation Expense, Net of Tax Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Number of Shares Share-based Compensation Arrangement by Share-based Payment Award, Option, Nonvested, Weighted Average Exercise Price 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. Share Based Compensation Arrangement By Share Based Payment Award Options Non Vested Outstanding Weighted Average Remaining Contractual Term Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized Common Stock, Capital Shares Reserved for Future Issuance The additional consecutive individual requisite service period required for eligibility in the Employee Share Incentive Plan. Additional Consecutive Individual Requisite Service Period Additional consecutive individual requisite service period required for eligibility in Employee Share Incentive Plan The number of preferred shares converted to common shares dependent upon specific criteria. Stockholders Equity Note Conversion Ratio Preferred Shares Number of preferred shares converted to common shares dependent upon specific criteria The number of common shares received upon conversion of preferred shares dependent upon specific criteria. Stockholders Equity Note Conversion Ratio Common Shares Number of common shares received upon conversion of preferred shares dependent upon specific criteria The number of average trading price of the common stock. Number Of Days Of Average Trading Price Of Common Stock Number of average trading price of the common stock The number of days employee option to purchase preferred stock must be exercised. Number Of Days Employee Option To Purchase Preferred Stock Must Be Exercised Number of days employee option to purchase preferred stock must be exercised Allocated Share-based Compensation Expense Closing price of the common shares. Closing Price of Common Shares Schedule of Defined Benefit Plans Disclosures [Table] Retirement Plan Type [Axis] Retirement Plan Type [Domain] Defined contribution plan Defined Benefit Plan Disclosure [Line Items] Defined Contribution Plan, Cost Fair Value Measurements, Recurring and Nonrecurring [Table] Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] The duration certain foreign currencies are fixed to the dollar. Term Of Foreign Exchange Risk To Dollar For Certain Currencies Duration certain foreign currencies are fixed to the dollar Commitments And Contingencies [Table] Customer [Axis] Customer [Domain] WSC [Member] Consolidated Entities [Axis] Consolidated Entities [Domain] Consolidated Water Bahamas [Member] na Commitments And Contingencies [ Line Items ] Contingencies Represents the base annual salary amount, under the employment agreement. Employment Agreement Base Annual Salaries Represents the percentage of consolidated revenue from Cayman Water retail operations. Cayman Water Retail Operations, Percentage Of Revenue Represents the percentage of consolidated gross profit from Cayman Water retail operations. Cayman Water Retail Operations, Percentage Of Gross Profit Percentage of delinquent account receivable balanc.e Percentage of Delinquent Accounts Receivable Balance Percentage of delinquent account receivables Long-term Purchase Commitment, Amount Accounts Receivable, Net Schedule of Related Party Transactions, by Related Party [Table] Related Party [Axis] Related Party [Domain] Related Party Transaction [Line Items] Related Party Transaction, Expenses from Transactions with Related Party Amount of expense related to sublease agreement Supplemental Disclosure Of Cash Flow Information [Table] Supplemental Disclosure Of Cash Flow Information [Line Items] Interest Paid, Excluding Capitalized Interest, Operating Activities Interest paid in cash Income Taxes Paid, Net Income taxes paid in cash Value of redeemable preferred stock issued in lieu of cash for services contributed to the entity. Value of the stock issued includes, but is not limited to, services contributed by vendors and founders. Redeemable Preferred Stock Issued During Period Value Issued For Services Issuance of 13,309 and 9,295, respectively, shares of redeemable preferred stock for services rendered Dividends Payable Dividends declared but not paid Amount of transfers from inventory to property plant and equipment and construction in progress. Transfers Between Inventory And Property Plant And Equipment Transfers from inventory to property, plant and equipment and construction in progress Amount of transfers from Construction in Progress to property, plant and equipment, net. Non cash Transactions, Transfers from Construction in Progress to property, plant and equipment, net Transfers from construction in progress to property, plant and equipment Value of common stock issued in lieu of cash for services contributed to the entity. Value of the stock issued includes, but is not limited to, services contributed by vendors and founders. Common Stock Issued During Period Value Issued For Services Issuance of shares, respectively, shares of common stock for services rendered EX-101.PRE 16 cwco-20231231_pre.xml EX-101.PRE XML 18 R1.htm IDEA: XBRL DOCUMENT v3.24.1
Document and Entity Information - USD ($)
12 Months Ended
Dec. 31, 2023
Mar. 20, 2024
Jun. 30, 2023
Document and Entity Information      
Document Type 10-K    
Document Annual Report true    
Document Period End Date Dec. 31, 2023    
Document Transition Report false    
Entity File Number 0-25248    
Entity Registrant Name CONSOLIDATED WATER CO. LTD.    
Entity Incorporation, State or Country Code KY    
Entity Tax Identification Number 98-0619652    
Entity Address, Address Line One Regatta Office Park    
Entity Address, Address Line Two Windward Three, 4th Floor, West Bay Road    
Entity Address, Address Line Three P.O. Box 1114    
Entity Address, City or Town Grand Cayman    
Entity Address, Postal Zip Code KY1-1102    
Entity Address, Country KY    
City Area Code 345    
Local Phone Number 945-4277    
Title of 12(b) Security Common Stock    
Security Exchange Name NASDAQ    
Trading Symbol CWCO    
Entity Voluntary Filers No    
Entity Well-known Seasoned Issuer No    
Entity Current Reporting Status Yes    
Entity Interactive Data Current Yes    
Entity Filer Category Non-accelerated Filer    
Entity Small Business true    
Entity Emerging Growth Company false    
Document Financial Statement Error Correction [Flag] false    
ICFR Auditor Attestation Flag false    
Auditor Name Marcum LLP    
Auditor Firm ID 688    
Auditor Location West Palm Beach, Florida    
Entity Shell Company false    
Entity Common Stock, Shares Outstanding   15,802,187  
Entity Central Index Key 0000928340    
Current Fiscal Year End Date --12-31    
Document Fiscal Year Focus 2023    
Document Fiscal Period Focus FY    
Amendment Flag false    
Entity Public Float     $ 360,491,856
XML 19 R2.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED BALANCE SHEETS - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Current assets    
Cash and cash equivalents $ 42,621,898 $ 50,711,751
Accounts receivable, net 38,226,891 27,046,182
Inventory 6,044,642 5,727,842
Prepaid expenses and other current assets 4,056,370 5,643,279
Contract assets 21,553,057 2,913,722
Current assets of discontinued operations 211,517 531,480
Total current assets 112,714,375 92,574,256
Property, plant and equipment, net 55,882,521 52,529,545
Construction in progress 495,471 3,705,681
Inventory, noncurrent 5,045,771 4,550,987
Investment in OC-BVI 1,412,158 1,545,430
Goodwill 12,861,404 10,425,013
Intangible assets, net 3,353,185 2,818,888
Operating lease right-of-use assets 2,135,446 2,058,384
Other assets 3,407,973 1,669,377
Long-term assets of discontinued operations 21,129,288 21,129,288
Total assets 218,437,592 193,006,849
Current liabilities    
Accounts payable, accrued expenses and other current liabilities 11,604,369 8,438,315
Accounts payable - related parties 0 403,839
Accrued compensation 3,160,030 2,267,583
Dividends payable 1,572,655 1,375,403
Current maturities of operating leases 456,865 546,851
Current portion of long-term debt 192,034 114,964
Contract liabilities 6,237,011 8,803,921
Deferred revenue 317,017 315,825
Current liabilities of discontinued operations 364,665 389,884
Total current liabilities 23,904,646 22,656,585
Long-term debt, noncurrent 191,190 216,117
Deferred tax liabilities 530,780 560,306
Noncurrent operating leases 1,827,302 1,590,542
Other liabilities 153,000 219,110
Total liabilities 26,606,918 25,242,660
Commitments and contingencies
Consolidated Water Co. Ltd. stockholders' equity    
Redeemable preferred stock, $0.60 par value. Authorized 200,000 shares; issued and outstanding 44,297 and 34,383 shares, respectively 26,578 20,630
Additional paid-in capital 92,188,887 89,205,159
Retained earnings 85,148,820 61,247,699
Total Consolidated Water Co. Ltd. stockholders' equity 186,827,212 159,667,213
Non-controlling interests 5,003,462 8,096,976
Total equity 191,830,674 167,764,189
Total liabilities and equity 218,437,592 193,006,849
Common Class A [Member]    
Consolidated Water Co. Ltd. stockholders' equity    
Common stock value 9,462,927 9,193,725
Common Class B [Member]    
Consolidated Water Co. Ltd. stockholders' equity    
Common stock value $ 0 $ 0
XML 20 R3.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED BALANCE SHEETS (Parenthetical) - $ / shares
Dec. 31, 2023
Dec. 31, 2022
Redeemable preferred stock, par value (in dollars per share) $ 0.60 $ 0.60
Redeemable preferred stock, authorized 200,000 200,000
Redeemable preferred stock, issued 44,297 34,383
Redeemable preferred stock, outstanding 44,297 34,383
Common Class A [Member]    
Common stock, par value (in dollars per share) $ 0.60 $ 0.60
Common stock, authorized 24,655,000 24,655,000
Common stock, issued 15,771,545 15,322,875
Common stock, outstanding 15,771,545 15,322,875
Common Class B [Member]    
Common stock, par value (in dollars per share) $ 0.60 $ 0.60
Common stock, authorized 145,000 145,000
Common stock, issued 0  
XML 21 R4.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED STATEMENTS OF INCOME - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
CONSOLIDATED STATEMENTS OF INCOME    
Revenue $ 180,211,233 $ 94,104,972
Cost of revenue (including related party expense of $0 and $2,694,810 in 2023 and 2022) 118,284,128 63,749,849
Gross profit 61,927,105 30,355,123
General and administrative expenses (including related party expense of $0 and $96,924 in 2023 and 2022) 24,752,366 21,070,234
Loss on asset dispositions and impairments, net (7,112) (12,704)
Income from operations 37,167,627 9,272,185
Other income (expense):    
Interest income 696,408 447,186
Interest expense (145,284) (46,545)
Profit-sharing income from OC-BVI 46,575 26,325
Equity in the earnings of OC-BVI 123,153 75,900
Loss on put/call options   (128,000)
Other 107,461 89,944
Other income, net 828,313 464,810
Income before income taxes 37,995,940 9,736,995
Provision for income taxes 6,750,014 396,739
Net income from continuing operations 31,245,926 9,340,256
Income from continuing operations attributable to non-controlling interests 573,791 1,112,913
Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders 30,672,135 8,227,343
Total loss from discontinued operations (1,086,744) (2,371,049)
Net income attributable to Consolidated Water Co. Ltd. stockholders $ 29,585,391 $ 5,856,294
Basic earnings (loss) per common share attributable to Consolidated Water Co. Ltd. common stockholders    
Continuing operations $ 1.95 $ 0.54
Discontinued operations (0.07) (0.16)
Basic earnings per share 1.88 0.38
Diluted earnings (loss) per common share attributable to Consolidated Water Co. Ltd. common stockholders    
Continuing operations 1.93 0.54
Discontinued operations (0.07) (0.16)
Diluted earnings per share 1.86 0.38
Dividends declared per common and redeemable preferred shares $ 0.36 $ 0.34
Weighted average number of common shares used in the determination of:    
Basic earnings per share 15,739,056 15,290,509
Diluted earnings per share 15,865,897 15,401,653
XML 22 R5.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED STATEMENTS OF INCOME (Parenthetical) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Cost of revenue.    
Purchases from related parties $ 0 $ 2,023
General and administrative expense.    
Purchases from related parties $ 0 $ 2,023
XML 23 R6.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY - USD ($)
Redeemable preferred stock [Member]
Preferred stock [Member]
Common stock [Member]
Additional paid-in capital [Member]
Retained earnings [Member]
Non controlling interests [Member]
Total
Balance at Dec. 31, 2021 $ 17,181 $ 9,146,216 $ 87,812,432 $ 60,603,056 $ 8,086,538 $ 165,665,423
Balance (in shares) at Dec. 31, 2021 28,635 15,243,693        
Issuance of share capital $ 5,577 $ 43,558 (49,135) 0 0 0
Issuance of share capital (in shares) 9,295 72,597        
Conversion of preferred stock $ (3,951) $ 3,951 0 0 0 0
Conversion of preferred stock (in shares) (6,585) 6,585        
Buyback of preferred stock $ (15) $ 0 (211) 0 0 (226)
Buyback of preferred stock (in shares) (26) 0        
Net income $ 0 $ 0 0 5,856,294 1,112,913 6,969,207
Exercise of options $ 1,838 $ 0 24,901 0 0 26,739
Exercise of options (in shares) 3,064 0        
Dividends declared $ 0 $ 0 0 (5,211,651) (1,102,475) (6,314,126)
Compensation expense relating to stock and stock option grants 0 0 1,417,172 0 0 1,417,172
Balance at Dec. 31, 2022 $ 20,630 $ 9,193,725 89,205,159 61,247,699 8,096,976 167,764,189
Balance (in shares) at Dec. 31, 2022 34,383 15,322,875        
Issuance of share capital $ 7,985 $ 41,319 (49,304) 0 0 0
Issuance of share capital (in shares) 13,309 68,864        
Purchase of Remaining Non-Controlling Interests in PERC $ 0 $ 221,030 1,006,248   (3,667,305) (2,440,027)
Purchase of remaining non-controlling interests in PERC (in shares)   368,383        
Conversion of preferred stock $ (5,309) $ 5,309 0 0 0 0
Conversion of preferred stock (in shares) (8,848) 8,848        
Buyback of preferred stock $ (122) $ 0 (1,708) 0 0 (1,830)
Buyback of preferred stock (in shares) (203) 0        
Net income $ 0 $ 0 0 29,585,391 573,791 30,159,182
Exercise of options $ 3,394 $ 1,544 94,826 0 0 $ 99,764
Exercise of options (in shares) 5,656 2,575       8,231
Dividends declared $ 0 $ 0 0 (5,684,270) 0 $ (5,684,270)
Compensation expense relating to stock and stock option grants 0 0 1,933,666 0 0 1,933,666
Balance at Dec. 31, 2023 $ 26,578 $ 9,462,927 $ 92,188,887 $ 85,148,820 $ 5,003,462 $ 191,830,674
Balance (in shares) at Dec. 31, 2023 44,297 15,771,545        
XML 24 R7.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Cash flows from operating activities    
Net income attributable to Consolidated Water Co. Ltd. stockholders $ 29,585,391 $ 5,856,294
Income from Continuing Operations Attributable to Non-Controlling Interests 573,791 1,112,913
Net income 30,159,182 6,969,207
Adjustments to reconcile net income to net cash provided by operating activities    
Impairment loss for Mexico assets - discontinued operations   377,326
Foreign currency transaction adjustment - discontinued operations (2,003) (102,507)
Loss from discontinued operations 1,088,747 2,096,230
Depreciation and amortization 6,576,454 6,187,308
Deferred income tax benefit (524,999) (4,220)
Provision for credit losses 408,489 0
Loss (gain) on net put/call option   (128,000)
Compensation expense relating to stock and stock option grants 1,933,666 1,417,172
Gain on Asset Dispositions and Impairments, Net 7,112 12,704
Profit-sharing and equity in earnings of OC-BVI (169,728) (102,225)
Distribution of earnings from OC-BVI 303,000 272,700
Accounts receivable (10,970,521) 303,125
Contract assets (18,639,335) (2,423,761)
Inventory (891,405) (3,387,011)
Prepaid expenses and other assets (755,391) (3,365,747)
Accounts payable (including related parties), accrued expenses and other current liabilities 3,161,386 6,756,433
Contract liabilities (2,566,910) 8,290,043
Operating lease liabilities (5,205) (5,208)
Deferred revenue 1,192 (267,821)
Net cash provided by operating activities - continuing operations 9,113,731 23,151,748
Net cash used in operating activities - discontinued operations (1,142,969) (1,819,943)
Net cash provided by operating activities 7,970,762 21,331,805
Cash flows from investing activities    
Purchase of certificate of deposit   (2,518,493)
Maturity of certificate of deposit   5,018,493
Additions to property, plant and equipment and construction in progress (5,047,884) (7,542,761)
Proceeds from asset dispositions 20,808 61,725
Acquisition of REC, net of cash acquired (3,419,916)  
Purchase of non-controlling interest in PERC (2,440,027)  
Net cash used in investing activities (10,887,019) (4,981,036)
Cash flows from financing activities    
Dividends paid to common shareholders (5,472,790) (5,145,742)
Dividends paid to preferred shareholders (14,228) (11,078)
Dividends paid to non-controlling interests   (1,102,475)
Buyback of redeemable preferred stock (1,830) (226)
Proceeds received from exercise of stock options 99,764 26,739
Principal repayments on long-term debt (135,481) (72,091)
Net cash used in financing activities (5,524,565) (6,304,873)
Net increase (decrease) in cash and cash equivalents (8,440,822) 10,045,896
Cash and cash equivalents at beginning of period 50,711,751 40,358,059
Cash and cash equivalents at beginning of period - discontinued operations 442,252 750,048
Less: cash and cash equivalents at end of period - discontinued operations (91,283) (442,252)
Cash and cash equivalents at end of period 42,621,898 50,711,751
Non-cash transactions:    
Issuance of 368,383 and 0, respectively, shares of common stock for the purchase of non-controlling interests in PERC 5,359,973 0
Right-of-use assets obtained in exchange for new operating lease liabilities 745,078 0
Purchase of equipment through issuance of long-term debt 0 188,645
Redeemable preferred stock [Member]    
Non-cash transactions:    
Conversion (on a one-to-one basis) of 8,848 and 6,585, respectively, shares of redeemable preferred stock to common stock 5,309 3,951
Common stock [Member]    
Non-cash transactions:    
Issuance of 68,864 and 72,597, respectively, shares of common stock for services rendered $ 1,015,177 $ 877,298
XML 25 R8.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical) - Redeemable preferred stock [Member] - shares
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Issuance of 44,873 and 41,830, respectively, shares of common stock for services rendered 13,309 9,295
Conversion (on a one-to-one basis) of 8,848 and 6,585, respectively, shares of redeemable preferred stock to common stock 8,848 6,585
XML 26 R9.htm IDEA: XBRL DOCUMENT v3.24.1
Principal activity
12 Months Ended
Dec. 31, 2023
Principal activity  
Principal activity

1. Principal activity

Consolidated Water Co. Ltd. and its subsidiaries (collectively, the “Company”) supply potable water, treat wastewater and 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.

XML 27 R10.htm IDEA: XBRL DOCUMENT v3.24.1
Accounting policies
12 Months Ended
Dec. 31, 2023
Accounting policies  
Accounting policies

2. Accounting policies

Basis of preparation: The consolidated financial statements presented are prepared in accordance with the accounting principles generally accepted in the United States of America.

Use of estimates: 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 revenue 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 revenue recognition on construction and manufacturing contracts. Actual results could differ significantly from such estimates.

Basis of consolidation: The accompanying consolidated financial statements include the accounts of the Company’s (i) wholly-owned subsidiaries, Aerex Industries, Inc. (“Aerex”), Aquilex, Inc. (“Aquilex”), Cayman Water Company Limited (“Cayman Water”), Consolidated Water Cooperatief, U.A. (“CW-Cooperatief”), Consolidated Water U.S. Holdings, Inc. (“CW-Holdings”), DesalCo Limited (“DesalCo”), Kalaeloa Desalco LLC (“Kalaeloa Desalco”), Ocean Conversion (Cayman) Limited (“OC-Cayman”), PERC Water Corporation ("PERC") and Ramey Environmental Compliance, Inc. (“REC”); and (ii) majority-owned subsidiaries Consolidated Water (Bahamas) Ltd. (“CW-Bahamas”), N.S.C. Agua, S.A. de C.V. (“NSC”), and Aguas de Rosarito S.A.P.I. de C.V. (“AdR”). The Company’s investment in its affiliate Ocean Conversion (BVI) Ltd. (“OC-BVI”) is accounted for using the equity method of accounting. All significant intercompany balances and transactions have been eliminated in consolidation.

In January 2023, as a result of CW-Holdings' exercise of a call option in October 2022, CW-Holdings purchased the remaining 39% ownership interest in PERC for $2.4 million in cash, and 368,383 shares of the Company’s common stock having a value of approximately $5.36 million based upon the opening trading price of the Company’s common stock on The Nasdaq Global Market on the date of the transaction. After giving effect to this purchase, CW-Holdings owns 100% of the outstanding capital stock of PERC.

In September 2021, Kalaeloa Desalco was formed to pursue a project in Oahu, Hawaii. On June 2, 2023, Kalaeloa Desalco signed a definitive agreement with the Honolulu Board of Water Supply to design, build, operate and maintain a 1.7 million gallons per day seawater reverse osmosis desalination plant in Oahu, Hawaii.

Effective October 1, 2023, the Company purchased, through its wholly-owned subsidiary PERC, a 100% ownership interest in Ramey Environmental Compliance, Inc., a Colorado company that operates and maintains water and wastewater treatment facilities and provides technical services to clients throughout the Rocky Mountain and Eastern Plains Regions of Colorado. PERC acquired REC in November 2023 for approximately $4.1 million and recorded goodwill and intangible assets from this acquisition of $2,436,391 and $1,108,390 respectively.

Foreign currency: The Company’s reporting currency is the United States dollar (“US$”). The functional currency of the Company and its foreign operating 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 $84,678 and $41,750 for the years ended December 31, 2023 and 2022, respectively, and are included in “Other income - Other” in the accompanying consolidated statements of income.

Cash and cash equivalents: Cash and cash equivalents consist of demand deposits at banks and certificates of deposit at banks with an original maturity of three months or less. Cash and cash equivalents as of December 31, 2023 and 2022 include $5.1 million and $5.0 million, respectively, of certificates of deposit with an original maturity of three months or less.

As of December 31, 2023, the Company had deposits in U.S. banks in excess of federally insured limits of approximately $16.9 million. As of December 31, 2023, the Company held cash in foreign bank accounts of approximately $24.2 million.

Certain transfers from the Company’s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of The Bahamas. The equivalent United States dollar cash balances for deposits held in The Bahamas as of December 31, 2023 and 2022 were approximately $3.0 million and $5.7 million, respectively.

Accounts receivable: Accounts receivable are recorded at invoiced amounts based on meter readings, contractual amounts, fixed fees plus reimbursables or time and materials per contractual agreements. 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.

Allowance for credit losses: The allowance for credit losses is the Company’s best estimate of the amount of probable credit losses in the Company’s existing accounts receivable and contract assets balances. The Company determines the current expected credit losses based on historical loss experience, current conditions, and reasonable and supportable forecasts. The Company also considers the nature of the financial asset, the credit quality of the counterparty, and other relevant factors.

Past due balances are reviewed individually for collectability. Account balances are charged off against the allowance for credit losses after all means of collection have been exhausted and the potential for recovery is considered by management to be remote.

Inventory: Inventory primarily consists of 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 (i) raw materials purchased for specific manufacturing contracts that are valued at cost on the first-in, first-out basis; and (ii) potable water held in the Company’s reservoirs that is valued at the lower of the average cost of producing water during the year or its net realizable value.

Contract assets and liabilities: Billing practices for the Company’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, which is recognized over time using the input method based on cost incurred. The Company records contract assets and contract liabilities to account for these differences in timing.

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 is recognized, and the liability is reduced, as the Company subsequently satisfies the performance obligation under the contract.

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 considered significant financing components.

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.

The Company’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.

Property, plant and equipment, net: 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:

Buildings

    

5 to 40 years

Plant and equipment

 

4 to 40 years

Distribution system

 

3 to 40 years

Office furniture, fixtures and equipment

 

3 to 10 years

Vehicles

 

3 to 10 years

Leasehold improvements

 

Shorter of 5 years or lease term

Lab equipment

 

5 to 10 years

Assets under construction are recorded as additions to property, plant and equipment upon completion of the projects. Depreciation commences in the 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.

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, 2023 or 2022.

Long-lived assets: 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.

Goodwill and intangible assets: Goodwill represents the excess cost of an acquired business over the fair value of the assets and liabilities of the acquired business as of the date of acquisition. Goodwill and intangible assets recorded as a result of a business combination 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 year. Management identifies the Company’s reporting units for goodwill impairment testing purposes, which consist of Cayman Water, the bulk segment (which is comprised of CW-Bahamas and OC-Cayman), PERC, and the manufacturing segment (i.e., Aerex), 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 these fair values to the carrying amounts of the reporting units. To the extent the carrying amount of a reporting unit exceeds the fair value of the reporting unit, an impairment loss is recorded.

For the year ended December 31, 2023, the Company elected to assess qualitative factors to determine whether it was necessary to perform the quantitative goodwill impairment testing that was conducted in prior years for the reporting units. The Company assessed the relevant events and circumstances to evaluate whether it is more likely than not that the fair values of such reporting units are less than their carrying values. The events and circumstances assessed for each reporting unit included macroeconomic conditions, industry and market conditions, cost factors, overall financial performance, and other relevant events. Based upon this qualitative assessment, the Company determined that it is more likely than not that the fair values of its reporting units exceeded their carrying values as of December 31, 2023.

For the year ended December 31, 2022, the Company elected to assess qualitative factors to determine whether it was necessary to perform the quantitative goodwill impairment testing conducted in prior years for all reporting units other than the manufacturing reporting unit. The Company assessed relevant events and circumstances to evaluate whether it is more likely than not that the fair values of such reporting units are less than their carrying values. The events and circumstances assessed for each reporting unit included macroeconomic conditions, industry and market conditions, cost factors, overall financial performance, and other relevant events. Based upon this qualitative assessment the Company determined that it was more likely than not that the fair values of its Cayman Water and bulk segment reporting units exceeded their carrying values as of December 31, 2022. Based upon the Company’s negotiated, arms-length purchase of the remaining 39% equity interest in PERC from its minority shareholders for $7.8 million in January 2023, the fair value of the Company’s PERC reporting unit exceeded its carrying value by 79% as of December 31, 2022.

Due to the factors discussed in the following paragraphs, the Company elected to test the goodwill associated with its manufacturing reporting unit for possible impairment for 2022 using the quantitative tests applied in prior years.

Approximately 80% of Aerex’s revenue, and 89% of Aerex’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’s revenue from this customer had 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’s future cash flows. Such projections assumed, in part, that Aerex’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’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.

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’s updated sales estimate for this customer based on this new information was substantially below the

anticipated sales to this customer for 2022 and subsequent years that the Company used in the discounted cash flow projections it prepared for purposes of testing its Manufacturing reporting unit’s goodwill for possible impairment as of December 31, 2020. Furthermore, Aerex’s efforts to replace the revenue previously generated from this customer with revenue from existing and new customers were adversely impacted by the negative economic conditions (caused in part by the COVID-19 pandemic). These negative economic conditions also increased Aerex’s raw material costs, resulted in raw material shortages and extended delivery times for such materials, and adversely affected the overall financial condition of Aerex’s current and prospective customers. Accordingly, in light of this new information from Aerex’s former major customer, and the on-going weak economic conditions that the Company believed would continue through 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 segment’s goodwill by this amount for the three months ended June 30, 2021.

For the year ended December 31, 2022, the Company estimated the fair value of its manufacturing reporting unit 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. The Company also estimated the fair value of its manufacturing reporting unit for the year ended December 31, 2022 by applying the guideline public company method. The Company weighted the fair values estimated for its manufacturing reporting unit under each method and summed such weighted fair values to estimate the overall fair value for the reporting unit. The respective weightings the Company applied to each method for the year ended December 31, 2022 were 80% to the discounted cash flow method and 20% to the guideline public company method.

The fair value the Company estimated for its manufacturing reporting unit exceeded its carrying amount by 63% as of December 31, 2022.

Investments: 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.

Other assets: Under the terms of CW-Bahamas’ contract with the Water and Sewerage Corporation of The Bahamas (“WSC”) 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 31, 2023 and 2022. Accumulated amortization for these costs was approximately $3.1 million and $2.9 million as of December 31, 2023 and 2022, respectively. Amortization expense for these costs was $179,353 for the years ended December 31, 2023 and 2022.

Income taxes: 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 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.

The Company is not presently subject to income taxes in the other countries in which it operates.

Revenue recognition: Revenue is recognized when control of the promised goods or services is transferred to the Company’s customers, in an amount that reflects the consideration the Company expects to be entitled to in exchange for those goods or services.

The following table presents the Company’s revenue disaggregated by revenue source.

 

Year Ended December 31, 

 

2023

    

2022

Retail revenue

$

30,158,051

$

25,954,013

Bulk revenue

 

34,595,058

 

32,991,066

Services revenue

 

97,966,650

 

28,835,428

Manufacturing revenue

 

17,491,474

 

6,324,465

Total revenue

$

180,211,233

$

94,104,972

Services revenue consists of the following:

 

Year Ended December 31, 

 

2023

    

2022

Construction revenue

$

77,306,704

$

11,616,274

Operations and maintenance revenue

 

19,368,365

 

14,152,158

Design and consulting revenue

 

1,291,581

 

3,066,996

Total services revenue

$

97,966,650

$

28,835,428

Retail revenue

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. Customers are billed 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.

The Company recognizes revenue from water sales at the time water is supplied to the customer’s premises. The amount of water supplied is determined and invoiced based upon water meter readings performed at the end of each month. All retail water contracts are month-to-month contracts. The Company has elected the “right to invoice” 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, recognizing this revenue from the transfer of goods or services to customers at a point in time.

Bulk revenue

The Company produces and supplies water to government-owned utilities in the Cayman Islands and The Bahamas.

OC-Cayman provides bulk water to the Water Authority-Cayman (“WAC”), 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’s retail license area.

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 (“WSC”), which distributes such water through its own pipeline system to residential, commercial and tourist properties on the island of New Providence.

The Company has elected the “right to invoice” 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, recognizing this revenue from the transfer of goods or services to customers at a point in time.

Services and Manufacturing revenue

The Company designs, builds, sells, operates and maintains, and provides consulting services related to water, wastewater and water reuse infrastructure through PERC. All of PERC's customers are companies or governmental entities located in the United States. Effective October 2023, PERC acquired REC, a company that provides operations and maintenance and consulting services to companies and governmental entities located in the United States.

The Company also 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.

The Company, through Aerex, is a custom and specialty manufacturer of systems and products applicable to commercial, municipal and industrial water production and treatment. Substantially all of Aerex’s customers are U.S. companies.

The Company generates construction, operations and maintenance, design and consulting revenue from PERC and DesalCo and generates manufacturing revenue from Aerex. The Company also generates operations and maintenance and consulting revenue from REC.

The Company recognizes revenue for its construction and custom/specialized manufacturing contracts over time under the input method using costs incurred (which represents work performed) to date relative to the total estimated costs at completion to measure progress toward satisfying a contract’s performance obligations as such measure best reflects the transfer of control of the promised good to the customer. Contract costs include labor, materials, subcontractor costs and other expenses. 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 costs to be incurred 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 percentage of total estimated revenue that incurred costs to date comprise of estimated total contract costs. Due to the extended time it may take to complete many of the Company’s contracts and the scope and nature of the work required to be performed on those contracts, the estimations of total revenue and costs at completion are complicated and subject to many variables and, accordingly, are subject to changes. When adjustments in estimated total contract revenue or estimated total contract costs are required, any changes from prior estimates are recognized in the current period for the inception-to-date effect of such changes. 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.

During the year ended December 31, 2023, the Company adjusted its prior year estimates of the total contract costs for two of its construction contracts. These changes in accounting estimates resulted in an increase in the services segment’s income from operations and the Company’s consolidated net income by $2,356,439 and $1,750,750, respectively, for the year ended December 31, 2023. This adjustment increased basic and diluted earnings per share by $0.11 for the year ended December 31, 2023.

The Company has elected the “right to invoice” practical expedient for revenue recognition on its operations and maintenance, design and consulting contracts and recognizes revenue in the amount to which the Company has a right to invoice, recognizing this revenue from the transfer of goods or services to customers at a point in time.

During the years ended December 31, 2023 and 2022, the Company recognized $77,411,792 and $14,146,271, respectively, of its services revenue from the transfer of goods or services to customers over time. The remaining services revenue of $20,554,858 and $14,689,157, respectively, was recognized from the transfer of goods or services to customers at a point in time. During the years ended December 31, 2023 and 2022, the Company recognized all of its manufacturing revenue from the transfer of goods or services to customers over time.

Practical Expedients and Exemptions

The Company does not disclose the value of unsatisfied performance obligations for (i) contracts with an original expected length of one year or less and (ii) contracts for which the Company recognizes revenue at the amount to which it has the right to invoice for services performed.

Comparative amounts: Certain amounts presented in the financial statements previously issued for 2022 have been reclassified to conform to the current year’s presentation.

XML 28 R11.htm IDEA: XBRL DOCUMENT v3.24.1
Cash and cash equivalents
12 Months Ended
Dec. 31, 2023
Cash and cash equivalents  
Cash and cash equivalents

3. Cash and cash equivalents

Cash and cash equivalents are not restricted by the terms of the Company’s bank accounts as to withdrawal or use. As of December 31, 2023 and 2022, the equivalent United States dollars of the Company’s cash and cash equivalents, including those accounts denominated in currencies other than the U.S. dollar, are as follows:

December 31, 

    

2023

    

2022

Bank accounts:

 

  

 

  

United States dollar

$

15,857,612

$

24,573,161

Cayman Islands dollar

 

11,826,102

 

14,956,162

Bahamian dollar

 

3,025,898

 

5,698,100

 

30,709,612

 

45,227,423

Short-term deposits:

 

  

 

  

United States dollar

 

8,861,606

 

2,476,370

Cayman Islands dollar

 

3,050,680

 

3,007,958

 

11,912,286

 

5,484,328

Total cash and cash equivalents

$

42,621,898

$

50,711,751

Transfers from the Company’s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of The Bahamas.

XML 29 R12.htm IDEA: XBRL DOCUMENT v3.24.1
Accounts receivable, net
12 Months Ended
Dec. 31, 2023
Accounts receivable, net.  
Accounts receivable, net

4. Accounts receivable, net

December 31, 

    

2023

    

2022

Trade accounts receivable

$

38,446,554

$

27,163,719

Receivable from OC-BVI

 

41,129

 

37,293

Other accounts receivable

 

322,609

 

28,384

 

38,810,292

 

27,229,396

Allowance for credit losses

 

(583,401)

 

(183,214)

Accounts receivable, net

$

38,226,891

$

27,046,182

The activity for the allowance for credit losses consisted of:

December 31, 

    

2023

    

2022

Opening allowance for credit losses

$

183,214

$

183,020

Provision for credit losses

 

408,489

 

Accounts written off during the year

 

(9,215)

 

(726)

Recovery of accounts written off

913

920

Ending allowance for credit losses

$

583,401

$

183,214

Significant concentrations of credit risk are disclosed in Note 18.

XML 30 R13.htm IDEA: XBRL DOCUMENT v3.24.1
Inventory
12 Months Ended
Dec. 31, 2023
Inventory  
Inventory

5. Inventory

December 31, 

    

2023

    

2022

Spare parts stock

$

7,747,455

$

6,514,333

Raw materials

3,135,357

3,481,486

Consumables stock

 

166,935

 

246,355

Water stock

40,666

36,655

Total inventory

 

11,090,413

 

10,278,829

Less current portion

 

6,044,642

 

5,727,842

Inventory (non-current)

$

5,045,771

$

4,550,987

XML 31 R14.htm IDEA: XBRL DOCUMENT v3.24.1
Contracts in progress
12 Months Ended
Dec. 31, 2023
Contracts in progress.  
Contracts in progress

6. Contracts in progress

Revenue recognized and amounts billed on contracts in progress are summarized as follows:

December 31, 

2023

2022

Revenue recognized to date on contracts in progress

    

$

108,952,682

    

$

25,469,014

Amounts billed to date on contracts in progress

 

(101,724,459)

 

(33,407,182)

Retainage

8,087,823

2,047,969

Net contract asset/(liability)

$

15,316,046

$

(5,890,199)

The above net balances are reflected in the accompanying consolidated balance sheet as follows:

December 31,

2023

2022

Contract assets

    

$

21,553,057

    

$

2,913,722

Contract liabilities

 

(6,237,011)

 

(8,803,921)

Net contract asset/(liability)

$

15,316,046

$

(5,890,199)

The significant increase in contract assets from December 31, 2022 to December 31, 2023 is attributable to the construction contract with the WAC for the Red Gate plant in Grand Cayman and the construction contract with Liberty Utilities for a water treatment facility in Arizona.

During the year ended December 31, 2023, the Company adjusted its prior year estimates of the total contract costs for two of its construction contracts. These changes in accounting estimates resulted in an increase in the services segment’s income from operations and the Company’s consolidated net income by $2,356,439 and $1,750,750, respectively, for the year ended December 31, 2023. This adjustment increased basic and diluted earnings per share by $0.11 for the year ended December 31, 2023.

As of December 31, 2023, the Company had unsatisfied or partially unsatisfied performance obligations for contracts in progress representing approximately $162.2 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 $22.2 million during the year ending December 31, 2024 and $140 million thereafter. In addition, the Company recognized revenue of approximately $8.7 million in the year ended December 31, 2023, that was included in the contract liability balance as of December 31, 2022.

XML 32 R15.htm IDEA: XBRL DOCUMENT v3.24.1
Property, plant and equipment and construction in progress
12 Months Ended
Dec. 31, 2023
Property, plant and equipment and construction in progress  
Property, plant and equipment and construction in progress

7. Property, plant and equipment and construction in progress

December 31, 

    

2023

    

2022

Land

$

6,488,400

$

6,488,400

Buildings

 

26,044,551

 

23,280,880

Plant and equipment

 

66,000,977

 

64,532,994

Distribution system

 

39,546,175

 

39,544,395

Office furniture, fixtures and equipment

 

3,338,760

 

3,109,546

Vehicles

 

3,433,561

 

2,525,576

Leasehold improvements

 

306,545

 

287,980

Lab equipment

 

12,456

 

12,456

 

145,171,425

 

139,782,227

Less accumulated depreciation

 

89,288,904

 

87,252,682

Property, plant and equipment, net

$

55,882,521

$

52,529,545

Construction in progress

$

495,471

$

3,705,681

As of December 31, 2023, the Company had outstanding capital commitments of approximately $455,000. The Company maintains insurance for loss or damage to all fixed assets that it deems susceptible to loss. During the years ended December 31, 2023 and 2022, $7,093,158 and $297,723, respectively, of construction in progress was placed in service. Depreciation expense was $5,823,008 and $5,425,177 for the years ended December 31, 2023 and 2022, respectively.

XML 33 R16.htm IDEA: XBRL DOCUMENT v3.24.1
Discontinued operations
12 Months Ended
Dec. 31, 2023
Discontinued operations  
Discontinued operations - Mexico project development

8. Discontinued operations – Mexico project development

In 2010, the Company began the pursuit, through its Netherlands subsidiary, Consolidated Water Cooperatief, U.A. (“CW-Cooperatief”), and its Mexico subsidiary, N.S.C. Agua, S.A. de C.V. (“NSC”), of a project (the “Project”) 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.

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’s plant was to be constructed.

Following an assessment by the State of Baja, California (the “State”) 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 “Consortium”) comprised of NSC, Suez Medio Ambiente México, S.A. de C.V. (“Suez MA”), a subsidiary of SUEZ International, S.A.S., and NuWater S.A.P.I. de C.V. (“NuWater”) 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.

In August 2016, NSC and NuWater incorporated a new company under the name Aguas de Rosarito S.A.P.I. de C.V. (“AdR”) 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.

On August 22, 2016, the Public Private Partnership Agreement for the Project (the “APP Contract”) was executed between AdR, the State Water Commission of Baja California (“CEA”), and the Government of Baja California, as represented by the Secretary of Planning and Finance and the Public Utilities Commission of Tijuana (“CESPT”). 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 public 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 January 2025. 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, 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.

On June 29, 2020, AdR received a letter (the “Letter”) 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 “Project Works” (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 required that 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 amparo 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 20 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 20-day 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 formal response from CEA or CESPT to its submission of non-recoverable expenses.

The Company believes CW-Cooperatief, as a Netherlands company, has certain rights relating to its investments in NSC and AdR under the Agreement on Promotion, Encouragement and Reciprocal Protection of Investments between the Kingdom of the Netherlands and the United Mexican States entered into force as of October 1, 1999 (the “Treaty”). On April 16, 2021, CW-Cooperatief submitted a letter to the President of Mexico and other Mexican federal government officials alleging that the State’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 invited Mexico to seek a resolution of this investment dispute through consultation and negotiation, but stated that if the dispute cannot be resolved in this manner, CW-Cooperatief would 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’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’s investment dispute.

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.

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 the Company has incurred and will continue to incur legal and other arbitration-related expenses that are material to its consolidated results of operations and cash flows.

During July 2022, the State initiated discussions with the Company to potentially resolve the issues related to the cancellation by the government of the Rosarito desalination plant contract as well as potentially addressing the State’s acute water shortage issues. The Company cannot presently determine the outcome of the discussions and the Company has not terminated its efforts to obtain relief through the international arbitration process as a result of these discussions.

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.

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 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 classified as discontinued operations in the accompanying consolidated financial statements.

The Company’s net losses from discontinued operations for the years ended December 31, 2023 and 2022 were ($1,086,744) and ($2,371,049), respectively.

Summarized financial information for the discontinued Mexico project development operation is as follows:

December 31, 

2023

2022

    

Cash

   

$

91,283

   

$

442,252

Accounts receivable

12,675

Prepaid expenses and other current assets

120,234

76,553

Land

 

21,126,898

 

21,126,898

Other assets

 

2,390

 

2,390

Total assets of discontinued operations

$

21,340,805

$

21,660,768

 

  

 

  

Total liabilities of discontinued operations

$

364,665

$

389,884

Year Ended December 31, 

2023

    

2022

Revenue

    

$

    

$

Loss from discontinued operations

$

1,086,744

$

2,371,049

Depreciation expense

$

$

Mexico Project litigation

a)EWG request of precautionary measures

In January 2018, EWG Water LLC (“EWG”) initiated an ordinary mercantile claim against, among others, N.S.C. Agua, S.A. de C.V. (“NSC”) and Consolidated Water Cooperatief, U.A. (“CW-Cooperatief”) (with Aguas de Rosarito S.A.P.I. de C.V. (“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 “Tenth Civil Judge”).

In such claim, EWG challenged, among other things, the transactions contemplated under a certain option agreement (entered into in 2012), and therefore, the capital investment transactions occurring in May 2013 that increased the ownership interest of CW-Cooperatief in NSC to 99.99%. 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. Within the above-mentioned claim, the Tenth Civil Judge granted EWG certain preliminary measures against NSC, which were later overturned by an Upper Court.

In July 2023, EWG filed a motion before a local court in Playas de Rosarito, Baja California (the “Rosarito Court”) to obtain precautionary measures consisting of the securing of assets owned by NSC (particularly real estate), as a procedure prior to the commencement of an arbitration that allegedly would be initiated by EWG against NSC to claim the payment of an indemnification for damages derived from a so-called simulation of legal acts. In the opinion of the Rosarito Court, such motion did not require notification to NSC or the presentation of counterarguments by NSC to the motion prior to securing the assets of NSC.

On July 28, 2023, the Rosarito Court issued a resolution in which it: (i) granted the precautionary measures requested by EWG, subject to the posting of a bond in the amount of MXN$1,500,000 (One Million Five Hundred Thousand Mexican Pesos), and (ii) ordered that once the precautionary measures were executed, EWG would have three business days counted as from the posting of the bond, to initiate and prove to the Rosarito Court that it initiated the arbitration. To the Company’s knowledge EWG has not posted the bond. Consequently, NSC has not been summoned to an arbitration procedure.

As EWG has apparently not posted the bond set by the Rosarito Court (i) the precautionary measures have not been enforced, (ii) no securing or attachment has been registered against the real estate of NSC; and (iii) NSC has not been formally summoned to this procedure. As stated previously, NSC is unaware of any arbitration commenced by EWG regarding this matter.

b)NSC amparo lawsuit

On August 16, 2023, NSC filed an amparo suit (i.e. application for constitutional relief) before the Eleventh Federal District Court in Tijuana (“Federal District Court in Tijuana”) against the precautionary measures granted to EWG by the Rosarito Court.

In its amparo suit, NSC also requested the Federal District Court in Tijuana to grant an order to put on hold said precautionary measures. A preliminary order to stay was granted by the Federal District Court in Tijuana, followed by a definitive injunction, subject to the posting of a guarantee. NSC has submitted the guarantee to the court.

NSC subsequently filed an extension of the amparo suit introducing new arguments aiming to strengthen NSC´s position. The amparo extension was admitted through a resolution published on November 7, 2023.

The Federal District Court in Tijuana has not been able to summon EWG on this amparo suit, as it has not been able to determine nor obtain information on an address where EWG can be summoned. As such, the Federal District Court in Tijuana has requested various authorities to provide information on any domicile where EWG can be summoned.

The responses of some authorities are in process of being received by the Federal District Court in Tijuana. NSC is waiting until all the authorities provide their official response to determine if there is a viable alternative for summoning EWG.

NSC offered certain evidence consisting of the docket of amparo file number 74/2020, which was processed by the Twelfth Civil District Court in Tijuana. The Amparo Law provides that any documentary evidence offered by the parties shall be issued without any cost. Therefore, NSC requested the Court to grant the expedition of said copies for free.

However, this request was denied by the Federal District Court in Tijuana. Therefore, NSC filed an appeal for review against said decision, which was admitted by the Federal District Court in Tijuana and sent to the Second Collegiate Circuit Court in Tijuana, acting as Court of Appeals, which confirmed the admission of the appeal remedy through a resolution published on January 26, 2024. The judgment is still pending resolution.

The Company cannot presently determine what impact the resolution of this matter may have on its consolidated financial statements.

XML 34 R17.htm IDEA: XBRL DOCUMENT v3.24.1
Intangible assets
12 Months Ended
Dec. 31, 2023
Intangible assets  
Intangible assets

9. Intangible assets

The Company’s purchase transactions for Aerex and PERC identified certain intangible assets. The remaining intangible assets and their respective useful lives are as follows: trade names (15 years) and facility management contracts (6 years).

Effective October 2023, the Company purchased a 100% ownership interest in REC. The purchase transaction identified certain intangible assets with a fair value of $1,108,390 and useful lives as follows: non-compete (5 years), trade name (15 years) and customer relationships (15 years).

The costs and accumulated amortization for these assets were as follows:

December 31, 

    

2023

    

2022

Cost

 

  

 

  

Non-compete agreements

$

268,590

$

Trade names

 

3,096,900

 

2,700,000

Customer relationships

442,900

Facility management contracts

 

2,200,000

 

2,200,000

 

6,008,390

 

4,900,000

Accumulated amortization

 

 

  

Non-compete agreements

 

(13,430)

 

Trade names

 

(1,106,615)

 

(920,000)

Customer relationships

(7,382)

Facility management contracts

 

(1,527,778)

 

(1,161,112)

 

(2,655,205)

 

(2,081,112)

Intangible assets, net

$

3,353,185

$

2,818,888

Amortization of intangible assets for each of the next five years and thereafter is expected to be as follows:

2024

    

$

656,371

2025

 

595,260

2026

 

289,705

2027

 

289,705

2028

 

276,275

Thereafter

 

1,245,869

$

3,353,185

Amortization expense was $574,093 and $582,778 for the years ended December 31, 2023 and 2022, respectively.

XML 35 R18.htm IDEA: XBRL DOCUMENT v3.24.1
Leases
12 Months Ended
Dec. 31, 2023
Leases  
Leases

10. Leases

The Company’s leases consist primarily of leases for office and warehouse space. 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’s current leases do not provide a readily determinable implicit rate. Therefore, the Company’s incremental borrowing rate is estimated to discount the lease payments based on information available at the lease commencement.

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.

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.

Lease assets and liabilities

The following table presents the lease-related assets and liabilities and their respective classification on the consolidated balance sheets:

    

December 31, 

December 31, 

2023

2022

ASSETS

 

  

Current

 

  

  

Prepaid expenses and other current assets

$

110,541

$

35,624

Current assets of discontinued operations

7,979

Noncurrent

 

 

Operating lease right-of-use assets

 

2,135,446

 

2,058,384

Total lease right-of-use assets

$

2,245,987

$

2,101,987

LIABILITIES

    

  

 

  

Current

 

  

  

Current maturities of operating leases

$

456,865

$

546,851

Current liabilities of discontinued operations

7,361

Noncurrent

 

 

Noncurrent operating leases

1,827,302

1,590,542

Total lease liabilities

$

2,284,167

$

2,144,754

Weighted average remaining lease term:

 

  

 

  

Operating leases

 

6.1 years

 

6.6 years

Operating leases - discontinued operations

0.0 years

0.8 years

 

 

Weighted average discount rate:

 

 

Operating leases

 

5.67%

 

5.11%

Operating leases - discontinued operations

0.00%

4.96%

The components of lease costs were as follows:

    

    

Year Ended December 31, 

2023

2022

Operating lease costs

$

751,261

$

692,404

Short-term lease costs

 

217,640

100,975

Lease costs - discontinued operations

45,979

40,021

Total lease costs

$

1,014,880

$

833,400

Supplemental cash flow information related to leases is as follows:

    

Year Ended December 31, 

2023

2022

Cash paid for amounts included in measurement of liabilities:

 

  

Operating cash outflows for operating leases

$

760,847

$

742,696

Operating cash outflows for operating leases - discontinued operations

11,337

9,590

Future lease payments relating to the Company's operating lease liabilities from continuing operations as of December 31, 2023 are as follows:

Years ending December 31, 

    

Total

2024

$

580,780

2025

 

462,990

2026

 

379,019

2027

 

336,597

2028

341,687

Thereafter

 

639,928

Total future lease payments

 

2,741,001

Less: imputed interest

 

(456,834)

Total lease obligations

 

2,284,167

Less: current obligations

 

(456,865)

Noncurrent lease obligations

$

1,827,302

XML 36 R19.htm IDEA: XBRL DOCUMENT v3.24.1
Income taxes
12 Months Ended
Dec. 31, 2023
Income taxes  
Income taxes

11. Income taxes

The components of income before income taxes for the years ended December 31, 2023 and 2022 are as follows:

Year Ended December 31, 

    

2023

    

2022

Foreign (not subject to income taxes)

$

10,002,233

$

6,958,583

Mexico

 

(742,367)

 

(987,279)

United States

 

27,649,330

 

1,394,642

 

36,909,196

 

7,365,946

Discontinued operations

 

1,086,744

 

2,371,049

$

37,995,940

$

9,736,995

The Company’s provision for (benefit from) income taxes for the years ended December 31, 2023 and 2022, which related to U.S. operations, consisted of the following:

Year Ended December 31, 

    

2023

    

2022

Current:

Federal

$

5,611,360

$

430,116

State

1,663,653

(29,157)

Foreign

Total current income tax expense (benefit)

7,275,013

400,959

Deferred:

 

 

Federal

(276,070)

(184,469)

State

(248,929)

180,249

Foreign

Total deferred income tax expense (benefit)

(524,999)

(4,220)

Total provision for (benefit from) income taxes

$

6,750,014

$

396,739

A reconciliation of the U.S. statutory federal tax rate to the effective rate for the years ended December 31, 2023 and 2022 is as follows:

Year Ended December 31, 

 

    

2023

    

2022

 

U.S. statutory federal rate

21.00

%  

21.00

%

State taxes, net of federal effect

 

2.88

%  

8.88

%

Foreign rate differential

 

(5.71)

%  

(25.57)

%

Research and development tax credit

 

%  

(1.92)

%

Permanent items

 

(0.32)

%  

(0.70)

%

Change in valuation allowance

 

(0.08)

%  

2.38

%

 

17.77

%  

4.07

%

The tax effects of significant items comprising the Company’s net long-term deferred tax liability as of December 31, 2023 and 2022 were as follows:

December 31, 

    

2023

    

2022

Continuing Operations

Deferred tax assets:

 

  

 

  

Research and development credit carryforwards

$

$

58,069

Net operating loss carryforwards

130,911

443,076

Accruals and reserves

146,057

82,503

Operating lease liabilities

501,397

412,840

Capitalized research expenditures

326,178

Others

29,094

Valuation allowances

 

 

(29,036)

 

1,133,637

 

967,452

Deferred tax liabilities:

 

  

 

  

Property and equipment

 

325,473

 

293,195

Intangible assets

 

847,450

 

821,723

Operating lease right-of-use assets

 

491,494

 

412,840

 

1,664,417

 

1,527,758

Net deferred tax liabilities

$

(530,780)

$

(560,306)

Discontinued Operations

Deferred tax assets:

Operating loss carryforwards - Mexico

$

5,844,847

$

5,378,177

Land basis difference - Mexico

2,818,663

2,163,681

Start-up costs - Mexico

7,015,484

4,274,858

Valuation allowances

(15,678,994)

(11,816,716)

$

$

As of December 31, 2023, continuing operations has a federal net loss carryforward of $0.6 million and a state net loss carryforward of $0.3 million, both of which have an indefinite expiration date. Discontinued operations has a net loss carryforward of $19.5 million that will begin to expire, if unused, in various amounts between 2024 and 2033.

XML 37 R20.htm IDEA: XBRL DOCUMENT v3.24.1
Earnings per share
12 Months Ended
Dec. 31, 2023
Earnings per share  
Earnings per share

12. Earnings per share

Earnings per share (“EPS”) is computed on a basic and diluted basis. Basic EPS is computed by dividing net income (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.

The following summarizes information related to the computation of basic and diluted EPS:

 

Year Ended December 31, 

 

2023

    

2022

Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders

$

30,672,135

$

8,227,343

Less: preferred stock dividends

 

(15,513)

 

(11,532)

Net income from continuing operations available to common shares in the determination of basic earnings per common share

 

30,656,622

 

8,215,811

Loss from discontinued operations

 

(1,086,744)

 

(2,371,049)

Net income available to common shares in the determination of basic earnings per common share

$

29,569,878

$

5,844,762

Weighted average number of common shares in the determination of basic earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders

 

15,739,056

 

15,290,509

Plus:

 

 

Weighted average number of preferred shares outstanding during the period

 

39,885

 

31,885

Potential dilutive effect of unexercised options and unvested stock grants

 

86,956

 

79,259

Weighted average number of shares used for determining diluted earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders

 

15,865,897

 

15,401,653

XML 38 R21.htm IDEA: XBRL DOCUMENT v3.24.1
Dividends
12 Months Ended
Dec. 31, 2023
Dividends.  
Dividends

13. Dividends

Interim dividends declared on Class A common stock and redeemable preferred stock for each quarter of the respective years ended December 31, 2023 and 2022 were as follows:

    

2023

    

2022

First Quarter

$

0.085

$

0.085

Second Quarter

 

0.085

 

0.085

Third Quarter

 

0.095

 

0.085

Fourth Quarter

 

0.095

 

0.085

$

0.36

$

0.34

XML 39 R22.htm IDEA: XBRL DOCUMENT v3.24.1
Segment information
12 Months Ended
Dec. 31, 2023
Segment information  
Segment information

14. Segment information

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 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 segment and does not allocate any of these non-direct expenses to its other three business segments.

The accounting policies of the segments are consistent with those described in Note 2. The Company evaluates each segment’s performance based upon its income (or loss) from operations. All intercompany transactions are eliminated for segment presentation purposes.

The Company’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.

 

Year Ended December 31, 2023

 

Retail

    

Bulk

    

Services

    

Manufacturing

    

Total

Revenue

$

30,158,051

$

34,595,058

$

97,966,650

$

17,491,474

    

$

180,211,233

Cost of revenue

 

13,891,229

 

24,128,132

 

66,797,762

 

13,467,005

 

118,284,128

Gross profit

 

16,266,822

 

10,466,926

 

31,168,888

 

4,024,469

 

61,927,105

General and administrative expenses

 

16,905,010

 

1,737,264

 

4,271,808

 

1,838,284

 

24,752,366

Gain (loss) on asset dispositions and impairments, net

 

(22,065)

 

12,720

 

 

2,233

 

(7,112)

Income (loss) from operations

$

(660,253)

$

8,742,382

$

26,897,080

$

2,188,418

 

37,167,627

Other income, net

 

  

 

  

 

 

  

828,313

Income before income taxes

 

  

 

  

 

  

 

  

 

37,995,940

Provision for income taxes

 

  

 

  

 

  

 

  

 

6,750,014

Net income from continuing operations

 

  

 

  

 

  

 

  

 

31,245,926

Income from continuing operations attributable to non-controlling interests

 

  

 

  

 

  

 

  

 

573,791

Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders

 

  

 

  

 

  

 

  

 

30,672,135

Loss from discontinued operations

 

  

 

  

 

  

 

  

 

(1,086,744)

Net income attributable to Consolidated Water Co. Ltd. stockholders

 

  

 

  

 

  

 

  

$

29,585,391

Depreciation and amortization expenses for the year ended December 31, 2023 for the retail, bulk, services and manufacturing segments were $2,484,845, $3,032,902, $785,347 and $273,360, respectively.

 

As of December 31, 2023

 

Retail

    

Bulk

    

Services

    

Manufacturing

    

Total

Accounts receivable, net

$

3,425,948

$

26,965,126

$

6,802,780

$

1,033,037

$

38,226,891

Inventory, current and non-current

$

3,041,460

$

4,858,324

$

55,272

$

3,135,357

$

11,090,413

Contract assets

$

$

$

17,715,872

$

3,837,185

$

21,553,057

Property, plant and equipment, net

$

32,809,487

$

20,370,056

$

1,143,884

$

1,559,094

$

55,882,521

Construction in progress

$

380,436

$

$

$

115,035

$

495,471

Intangibles, net

$

$

$

2,692,074

$

661,111

$

3,353,185

Goodwill

$

1,170,511

$

1,948,875

$

7,756,807

$

1,985,211

$

12,861,404

Total segment assets

$

58,774,647

$

63,956,725

$

58,476,773

$

15,888,642

$

197,096,787

Assets of discontinued operations

$

21,340,805

Total assets

$

218,437,592

 

Year Ended December 31, 2022

 

Retail

    

Bulk

    

Services

    

Manufacturing

    

Total

Revenue

$

25,954,013

$

32,991,066

$

28,835,428

$

6,324,465

$

94,104,972

Cost of revenue

 

12,548,763

 

23,032,212

 

22,973,634

 

5,195,240

 

63,749,849

Gross profit

 

13,405,250

 

9,958,854

 

5,861,794

 

1,129,225

 

30,355,123

General and administrative expenses

 

14,552,866

 

1,570,732

 

3,461,294

 

1,485,342

 

21,070,234

Gain (loss) on asset dispositions and impairments, net

 

(39,397)

 

5,607

 

23,717

 

(2,631)

 

(12,704)

Income (loss) from operations

$

(1,187,013)

$

8,393,729

$

2,424,217

$

(358,748)

 

9,272,185

Other income, net

 

  

 

  

 

  

 

  

 

464,810

Income before income taxes

 

  

 

  

 

  

 

  

 

9,736,995

Provision for income taxes

396,739

Net income from continuing operations

 

  

 

  

 

  

 

  

 

9,340,256

Income from continuing operations attributable to non-controlling interests

 

  

 

  

 

  

 

  

 

1,112,913

Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders

 

  

 

  

 

  

 

  

 

8,227,343

Loss from discontinued operations

 

  

 

  

 

  

 

  

 

(2,371,049)

Net income attributable to Consolidated Water Co. Ltd. stockholders

 

  

 

  

 

  

 

  

$

5,856,294

Depreciation and amortization expenses for the year ended December 31, 2022 for the retail, bulk, services and manufacturing segments were $2,391,603, $2,836,794, $674,508 and $284,403, respectively.

 

As of December 31, 2022

 

Retail

    

Bulk

    

Services

    

Manufacturing

    

Total

Accounts receivable, net

$

2,953,927

$

16,554,940

$

5,838,721

$

1,698,594

$

27,046,182

Inventory, current and non-current

$

2,759,659

$

4,037,684

$

$

3,481,486

$

10,278,829

Contract assets

$

$

$

1,249,069

$

1,664,653

$

2,913,722

Property, plant and equipment, net

$

27,697,490

$

22,510,658

$

759,409

$

1,561,988

$

52,529,545

Construction in progress

$

3,643,889

$

$

$

61,792

$

3,705,681

Intangibles, net

$

$

$

2,064,444

$

754,444

$

2,818,888

Goodwill

$

1,170,511

$

1,948,875

$

5,320,416

$

1,985,211

$

10,425,013

Total segment assets

$

65,853,789

$

56,118,243

$

36,319,078

$

13,054,971

$

171,346,081

Assets of discontinued operations

 

 

 

 

$

21,660,768

Total assets

 

 

 

 

$

193,006,849

Revenue earned by major geographic region was:

Year ended December 31, 

    

2023

    

2022

Cayman Islands

$

41,728,340

$

30,375,985

The Bahamas

 

31,221,633

 

29,943,615

United States

 

106,768,621

 

33,338,466

Revenue earned from management services agreement with OC-BVI

 

492,639

 

446,906

$

180,211,233

$

94,104,972

Revenue earned from major customers was:

Year ended December 31, 

    

2023

    

2022

Revenue earned from the WSC

$

31,221,633

$

29,943,615

Percentage of consolidated revenue earned from the WSC

 

17%

 

32%

Revenue earned from one service segment customer

$

64,149,170

$

11,805,752

Percentage of consolidated revenue earned from the one service segment customer

 

36%

 

13%

Property, plant and equipment, net by major geographic region was:

December 31, 

    

2023

    

2022

Cayman Islands

$

32,902,949

$

28,068,156

The Bahamas

 

20,039,049

 

22,031,690

United States

 

2,940,523

 

2,429,699

$

55,882,521

$

52,529,545

XML 40 R23.htm IDEA: XBRL DOCUMENT v3.24.1
Cost of revenues and general and administrative expenses
12 Months Ended
Dec. 31, 2023
Cost of revenues and general and administrative expenses  
Cost of revenues and general and administrative expenses

15. Cost of revenue and general and administrative expenses

Year Ended December 31, 

    

2023

    

2022

Cost of revenue consist of:

Subcontractor and other project costs

$

64,806,072

$

17,847,124

Employee costs

 

18,935,014

 

14,036,117

Electricity

 

9,502,666

 

6,975,129

Fuel oil

 

9,024,836

 

10,203,690

Depreciation

 

5,632,998

 

5,261,463

Maintenance

 

2,992,872

 

2,786,258

Insurance

 

2,061,497

 

1,782,333

Retail license royalties

 

1,842,924

 

1,590,250

Other

 

3,485,249

 

3,267,485

$

118,284,128

$

63,749,849

Year Ended December 31, 

2023

2022

General and administrative expenses consist of:

 

  

 

  

Employee costs

$

13,690,152

$

11,209,635

Professional fees

 

2,012,092

 

1,760,279

Insurance

 

1,903,856

 

2,067,625

Directors’ fees and expenses

 

980,759

 

991,592

Office rent

882,686

793,380

Amortization of intangible assets

 

574,093

 

582,778

Investor relations

534,979

354,158

Business development expenses

578,086

395,660

Provision for credit losses

408,489

Computer supplies, software licenses

387,335

322,310

Bank charges

341,263

490,237

Depreciation

 

190,010

 

163,714

Other

 

2,268,566

 

1,938,866

$

24,752,366

$

21,070,234

XML 41 R24.htm IDEA: XBRL DOCUMENT v3.24.1
Stock-based compensation
12 Months Ended
Dec. 31, 2023
Stock-based compensation  
Stock-based compensation

16. Stock-based compensation

The Company has the following stock compensation plans that form part of its employees’ and Directors’ remuneration:

Employee Share Incentive Plan (Preferred Stock)

Employees (i.e., other than Directors and Officers), after four consecutive years of employment, become eligible to receive shares of the Company’s preferred stock for $nil consideration under the Company’s Employee Share Incentive Plan. Once an individual becomes eligible for this plan, they are awarded shares of preferred stock in the month of June following their date of eligibility for the plan (the “grant date”) and in June of each subsequent year of the individual's employment for as long as the individual remains employed with the Company. If the employee remains with the Company through the fourth anniversary of a grant date, the preferred stock can be converted into shares of the Company’s common stock on a one for one basis. In addition, at the time the preferred stock is granted, the employee receives options to purchase an equal number of shares of preferred stock at a discount to the average trading price of the Company’s common stock for the first seven days of the October 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 date. Each employee’s option to purchase shares of preferred stock must be exercised within 30 days of the grant date, which is the 90th day after the date of the independent registered public accountants’ audit opinion on the Company’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 years ended December 31, 2023 and 2022 totaled 13,309 and 9,295, respectively, and an equal number of preferred stock options were granted in each of these years.

Employee Share Option Plan (Common Stock Options)

The Company has an employee stock option plan for four long-serving employees of the Company. Under the plan, these employees are granted in each calendar 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’s Annual Shareholder Meeting. The number of options each employee is granted is equal to five times the sum of (i) the number of shares of preferred stock that employee receives for $nil consideration and (ii) the number of preferred stock options that employee exercises in that given year. Options may be exercised during the period commencing on the fourth anniversary of the grant date and ending on the 30th day after the fourth anniversary of the grant date. Options granted under this plan during the years ended December 31, 2023 and 2022 totaled 3,010 and 3,665, respectively.

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’s common stock. 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.

2008 Equity Incentive Plan

On May 14, 2008, the Company’s stockholders approved the 2008 Equity Incentive Plan (the “2008 Plan”) and reserved 1,500,000 shares of the Company’s Class 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.

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 $703,289 and $386,260 for the years ended December 31, 2023 and 2022, respectively, and is included in general and administrative expenses in the accompanying consolidated statements of income.

The significant weighted average assumptions for the years ended December 31, 2023 and 2022 were as follows:

    

2023

    

2022

 

Risk free interest rate

 

5.06

%  

1.64

%

Expected option life (years)

 

1.0

 

1.2

Expected volatility

 

42.42

%  

47.15

%

Expected dividend yield

 

1.60

%  

2.35

%

A summary of the Company’s stock option activity for the year ended December 31, 2023 is as follows:

Weighted

Weighted

Average

Average

Remaining

Aggregate

Exercise

Contractual

Intrinsic

    

Options

    

Price

    

Life (Years)

    

Value (1)

Outstanding at beginning of period

 

11,740

$

13.59

 

  

 

  

Granted

 

16,319

 

13.62

 

  

 

  

Exercised

 

(8,231)

 

12.12

 

  

 

  

Forfeited/expired

 

(7,653)

 

11.28

 

  

 

  

Outstanding as of December 31, 2023

 

12,175

$

16.08

 

2.29

years  

$

237,705

Exercisable as of December 31, 2023

 

$

 

years  

$

(1)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 $35.60 on the Nasdaq Global Select Market on December 31, 2023, exceeds the exercise price of the option.

As of December 31, 2023, 12,175 non-vested options were outstanding, with weighted average exercise price of $16.08, and average remaining contractual life of 2.29 years. The total remaining unrecognized compensation costs related to unvested stock-based arrangements were $14,867 as of December 31, 2023 and are expected to be recognized over a weighted average period of 2.29 years.

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, 2023 and 2022:

    

2023

    

2022

Options granted with an exercise price below market price on the date of grant:

 

  

 

  

Employees — preferred stock

$

12.21

$

5.58

Overall weighted average

 

12.21

 

5.58

Options granted with an exercise price at market price on the date of grant:

 

  

 

  

Management employees

$

$

Employees — common stock

 

8.29

 

4.32

Overall weighted average

 

8.29

 

4.32

Options granted with an exercise price above market price on the date of grant:

 

  

 

  

Management employees

$

$

Employees — preferred stock

 

 

Overall weighted average

 

 

Total intrinsic value of options exercised

$

104,559

$

17,158

Senior Management Long-Term Incentive Compensation

The Board of Directors has established the long-term incentive compensation for the Company’s senior management to better align the interests of its senior management with those of its shareholders. The 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.

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 year over a three-year period. The number of non-performance-based stock grant rights issued on January 3, 2023 and 2022 were 29,508 and 32,265, respectively. These stock grant rights vest in one-third increments over the three-year periods ending December 31, 2025 and 2024, respectively. The total number of vested shares issued under prior years’ non-performance stock grant rights totaled 25,986 and 23,411 in the years ended December 31, 2023 and 2022, respectively. For the years ended December 31, 2023 and 2022, the Company recognized $366,058 and $325,270 in stock-based compensation expense, respectively, related to the incremental vesting of the non-performance stock grant rights.

The performance-based grants may be earned at the end of each year based upon the Company's three-year cumulative financial performance relative to three-year cumulative financial performance targets. The Company recognized $522,925 and $335,964 in stock-based compensation for the year ended December 31, 2023 and 2022, respectively, related to these grants.

A total of 26,742 stock grant rights were earned as of December 31, 2023 based upon the Company’s actual financial performance relative to the cumulative financial performance targets for the three-year period ended December 31, 2023 The shares associated with these grants will be issued in 2024.

A total of 13,797 stock grant rights were earned as of December 31, 2022 based upon the Company’s actual financial performance relative to the cumulative financial performance targets for the three-year period ended December 31, 2022. The shares associated with these grants were issued in 2023.

Non-Executive Directors’ Share Plan

This stock grant plan provides part of the Directors’ 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’s common stock on October 1 of the year preceding the grant. Common stock granted under this plan during the years ended December 31, 2023 and 2022 totaled 22,831 and 30,767 shares, respectively. The Company recognized stock-based compensation for these share grants of $341,394 and $369,678 for the years ended December 31, 2023 and 2022, respectively.

XML 42 R25.htm IDEA: XBRL DOCUMENT v3.24.1
Retirement benefits
12 Months Ended
Dec. 31, 2023
Retirement benefits  
Retirement benefits

17. Retirement benefits

Retirement plans are offered to all employees in California, Florida, Colorado, the Cayman Islands and The Bahamas. The plans are administered by third parties and are defined contribution plans pursuant to which the Company matches participating employees’ contributions up to certain amounts. The Company’s expense for these plans was $771,616 and $624,798 for the years ended December 31, 2023 and 2022, respectively.

XML 43 R26.htm IDEA: XBRL DOCUMENT v3.24.1
Financial instruments
12 Months Ended
Dec. 31, 2023
Financial instruments  
Financial instruments

18. Financial instruments

Credit risk:

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’ accounts that are more than 45 days overdue. The Company’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 a material allowance for these receivables.

Interest rate risk:

The Company is not subject to significant interest rate risk arising from fluctuations in interest rates.

Foreign exchange risk:

All relevant foreign currencies other than the Mexican peso and the euro have been fixed to the dollar for more than 20 years 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’s consolidated results of operations could be adversely affected.

Fair values:

As of December 31, 2023 and 2022, 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.

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’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:

Level 1 - Quoted prices in active markets for identical assets or liabilities.

Level 2 - Inputs other than Level 1 that are observable, either directly or indirectly, such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities.

Level 3 - Unobservable inputs that are supported by little or no market activity and that are significant to the fair value of the assets or liabilities.

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.

As of December 31, 2023 and 2022, the Company does not have assets and liabilities measured at fair value to present in the fair value hierarchy.

XML 44 R27.htm IDEA: XBRL DOCUMENT v3.24.1
Commitments and contingencies
12 Months Ended
Dec. 31, 2023
Commitments and contingencies.  
Commitments and contingencies

19. Commitments and contingencies

Commitments

The Company has entered into employment agreements with certain executives, which expire through December 31, 2026 and provide for, among other things, base annual salaries in an aggregate amount of approximately $5.5 million, performance bonuses and various employee benefits.

The Company has purchase obligations totaling approximately $16.6 million through December 31, 2024.

Contingencies

Cayman Water

The Company sells water through its Cayman Water retail operations under a license issued in July 1990 by the Cayman Islands government (the “1990 license”) that granted Cayman Water the exclusive right to provide potable water to customers within its licensed service area. Although the 1990 license has not been 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 2023 and 2022, the Company generated approximately 17% and 27%, respectively, of its consolidated revenue and 26% and 44%, respectively, of its consolidated gross profit from the retail water operations conducted under the 1990 license.

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 of 7.5% of the revenue that Cayman Water collects as required under the 1990 license.

In October 2016, the Government of the Cayman Islands passed legislation which created a new utilities regulation and competition office (“OfReg”). 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 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 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 2017. The Company began license negotiations with OfReg in July 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.

The Company is presently unable to determine what impact the resolution of its retail license negotiations will have on its consolidated 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’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’s consolidated financial condition and results of operations.

CW-Bahamas

CW-Bahamas’ accounts receivable balances (which include accrued interest) due from the WSC amounted to $26.9 million and $16.3 million as of December 31, 2023 and 2022. Approximately 80% and 65% of the accounts receivable balances were delinquent as of those dates, respectively.

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’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 not provided for a material allowance for credit losses for its accounts receivable from the WSC as of December 31, 2023.

CW-Bahamas held discussions with the WSC in March 2024 during which the WSC stated that the Government intends to substantially reduce CW-Bahamas’ accounts receivable from the WSC over the course of 2024.

In a report dated October 6, 2022, Moody’s Investor Services (“Moody’s”) downgraded the Government of The Bahamas’ long-term issuer and senior unsecured ratings to B1 from Ba3. Moody’s also lowered The Bahamas’ local currency ceiling to Baa3 from Baa2 and its foreign currency ceiling to Ba1 from Baa3. Moody’s iterated these ratings in April and October 2023, noting that such ratings are “stable.”

If CW-Bahamas is unable to collect a sufficient portion of its delinquent accounts receivable, one or more of the following events may occur: (i) CW-Bahamas may not have sufficient liquidity to meet its obligations; (ii) the Company may be required to cease the recognition of revenue on CW-Bahamas’ water supply agreements with the WSC; and (iii) the Company may be required to provide an additional allowance for credit losses for CW-Bahamas’ accounts receivable. Any of these events could have a material adverse impact on the Company’s consolidated financial condition, results of operations, and cash flows.

XML 45 R28.htm IDEA: XBRL DOCUMENT v3.24.1
Related party transactions
12 Months Ended
Dec. 31, 2023
Related party transactions  
Related party transactions

20. Related party transactions

The Company, through PERC, purchased engineering and technology support services from various companies formerly affiliated with PERC, as a minority shareholder in these companies was also a minority shareholder of PERC. On January 4, 2023, as a result of CW-Holdings' exercise of a call option in October 2022, CW-Holdings purchased the remaining 39% ownership interest in PERC. After giving effect to this purchase, CW-Holdings owns 100% of the outstanding capital stock of PERC and, consequently, transactions with the formerly affiliated companies no longer constitute related party transactions. During the year ended December 31, 2022, the Company made total purchases of services from these companies of approximately $2,695,000. These total purchases are included in the Company’s cost of revenue in the accompanying consolidated statements of income.

PERC entered into a sublease agreement with one of these formerly affiliated companies that commenced on March 14, 2021 and ended August 31, 2021. This lease was extended on a month-to-month basis subsequent to August 31, 2021. During the year ended December 31, 2022, the Company recognized approximately $97,000 of expense related to this lease. This lease expense is included in the Company's general and administrative expenses in the accompanying consolidated statements of income.

The total amount of accounts payable outstanding to these companies as of December 31, 2022, was approximately $404,000.

XML 46 R29.htm IDEA: XBRL DOCUMENT v3.24.1
Supplemental disclosure of cash flow information
12 Months Ended
Dec. 31, 2023
Supplemental disclosure of cash flow information  
Supplemental disclosure of cash flow information

21. Supplemental disclosure of cash flow information

Year Ended December 31, 

    

2023

    

2022

Interest paid in cash

$

21,417

$

14,797

Income taxes paid in cash

$

4,920,912

$

211,000

Non-cash transactions:

 

 

  

Issuance of 13,309 and 9,295, respectively, shares of redeemable preferred stock for services rendered

$

323,275

$

133,197

Issuance of 68,864 and 72,597, respectively, shares of common stock for services rendered

$

1,015,177

$

877,298

Conversion (on a one-to-one basis) of 8,848 and 6,585, respectively, shares of redeemable preferred stock to common stock

$

5,309

$

3,951

Dividends declared but not paid

$

1,502,506

$

1,305,367

Issuance of 368,383 and 0, respectively, shares of common stock for the purchase of non-controlling interest in PERC

$

5,359,973

$

Transfers from inventory to property, plant and equipment and construction in progress

$

317,853

$

346,024

Transfers from construction in progress to property, plant and equipment

$

7,093,158

$

297,723

Right-of-use assets obtained in exchange for new operating lease liabilities

$

745,078

$

Purchase of equipment through issuance of long-term debt

$

$

188,645

XML 47 R30.htm IDEA: XBRL DOCUMENT v3.24.1
Impact of recent accounting standards
12 Months Ended
Dec. 31, 2023
Impact of recent accounting standards  
Impact of recent accounting standards

22. Impact of recent accounting standards

Adoption of new accounting standards:

Financial Accounting Standard Update (“ASU”) 2016-13, Measurement of Credit Losses on Financial Instruments, and related amendments, introduces new guidance which makes substantive changes to the accounting for credit losses. This guidance introduces the current expected credit losses (“CECL”) model which applies to financial assets subject to credit losses and measured at amortized cost, as well as certain off-balance sheet credit exposures. The CECL model requires an entity to estimate credit losses expected over the life of an exposure, considering information about historical events, current conditions, and reasonable and supportable forecasts and is generally expected to result in earlier recognition of credit losses. The Company adopted this guidance as of January 1, 2023 using the modified retrospective approach. The impact of this adoption was not material to the Company’s consolidated financial statements.  

Effect of newly issued but not yet effective accounting standards:

In November 2023, the Financial Accounting Standards Board (“FASB”) issued Accounting Standards Update ("ASU") 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures. This ASU updates reportable segment disclosure requirements by requiring disclosures of significant reportable segment expenses that are regularly provided to the Chief Operating Decision Maker (“CODM”) and included within each reported measure of a segment's profit or loss. This ASU also requires disclosure of the title and position of the individual identified as the CODM and an explanation of how the CODM uses the reported measures of a segment’s profit or loss in assessing segment performance and deciding how to allocate resources. The ASU is effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. Early adoption is permitted. The Company is currently evaluating the impact of this guidance.

In December 2023, the FASB issued ASU 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures. The ASU requires disaggregated information about a reporting entity’s effective tax rate reconciliation as well as additional information on income taxes paid. The ASU is effective on a prospective basis for annual periods beginning after December 15, 2024. Early adoption is permitted. The Company is currently evaluating the impact of this guidance.

XML 48 R31.htm IDEA: XBRL DOCUMENT v3.24.1
Subsequent events
12 Months Ended
Dec. 31, 2023
Subsequent events  
Subsequent events

23. Subsequent events

The Company evaluated subsequent events through the time of the filing of its Annual Report on Form 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.

XML 49 R32.htm IDEA: XBRL DOCUMENT v3.24.1
Accounting policies (Policies)
12 Months Ended
Dec. 31, 2023
Accounting policies  
Basis of preparation

Basis of preparation: The consolidated financial statements presented are prepared in accordance with the accounting principles generally accepted in the United States of America.

Use of estimates

Use of estimates: 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 revenue 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 revenue recognition on construction and manufacturing contracts. Actual results could differ significantly from such estimates.

Basis of consolidation

Basis of consolidation: The accompanying consolidated financial statements include the accounts of the Company’s (i) wholly-owned subsidiaries, Aerex Industries, Inc. (“Aerex”), Aquilex, Inc. (“Aquilex”), Cayman Water Company Limited (“Cayman Water”), Consolidated Water Cooperatief, U.A. (“CW-Cooperatief”), Consolidated Water U.S. Holdings, Inc. (“CW-Holdings”), DesalCo Limited (“DesalCo”), Kalaeloa Desalco LLC (“Kalaeloa Desalco”), Ocean Conversion (Cayman) Limited (“OC-Cayman”), PERC Water Corporation ("PERC") and Ramey Environmental Compliance, Inc. (“REC”); and (ii) majority-owned subsidiaries Consolidated Water (Bahamas) Ltd. (“CW-Bahamas”), N.S.C. Agua, S.A. de C.V. (“NSC”), and Aguas de Rosarito S.A.P.I. de C.V. (“AdR”). The Company’s investment in its affiliate Ocean Conversion (BVI) Ltd. (“OC-BVI”) is accounted for using the equity method of accounting. All significant intercompany balances and transactions have been eliminated in consolidation.

In January 2023, as a result of CW-Holdings' exercise of a call option in October 2022, CW-Holdings purchased the remaining 39% ownership interest in PERC for $2.4 million in cash, and 368,383 shares of the Company’s common stock having a value of approximately $5.36 million based upon the opening trading price of the Company’s common stock on The Nasdaq Global Market on the date of the transaction. After giving effect to this purchase, CW-Holdings owns 100% of the outstanding capital stock of PERC.

In September 2021, Kalaeloa Desalco was formed to pursue a project in Oahu, Hawaii. On June 2, 2023, Kalaeloa Desalco signed a definitive agreement with the Honolulu Board of Water Supply to design, build, operate and maintain a 1.7 million gallons per day seawater reverse osmosis desalination plant in Oahu, Hawaii.

Effective October 1, 2023, the Company purchased, through its wholly-owned subsidiary PERC, a 100% ownership interest in Ramey Environmental Compliance, Inc., a Colorado company that operates and maintains water and wastewater treatment facilities and provides technical services to clients throughout the Rocky Mountain and Eastern Plains Regions of Colorado. PERC acquired REC in November 2023 for approximately $4.1 million and recorded goodwill and intangible assets from this acquisition of $2,436,391 and $1,108,390 respectively.

Foreign currency

Foreign currency: The Company’s reporting currency is the United States dollar (“US$”). The functional currency of the Company and its foreign operating 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 $84,678 and $41,750 for the years ended December 31, 2023 and 2022, respectively, and are included in “Other income - Other” in the accompanying consolidated statements of income.

Cash and cash equivalents

Cash and cash equivalents: Cash and cash equivalents consist of demand deposits at banks and certificates of deposit at banks with an original maturity of three months or less. Cash and cash equivalents as of December 31, 2023 and 2022 include $5.1 million and $5.0 million, respectively, of certificates of deposit with an original maturity of three months or less.

As of December 31, 2023, the Company had deposits in U.S. banks in excess of federally insured limits of approximately $16.9 million. As of December 31, 2023, the Company held cash in foreign bank accounts of approximately $24.2 million.

Certain transfers from the Company’s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of The Bahamas. The equivalent United States dollar cash balances for deposits held in The Bahamas as of December 31, 2023 and 2022 were approximately $3.0 million and $5.7 million, respectively.

Accounts receivable

Accounts receivable: Accounts receivable are recorded at invoiced amounts based on meter readings, contractual amounts, fixed fees plus reimbursables or time and materials per contractual agreements. 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.

Allowance for credit losses

Allowance for credit losses: The allowance for credit losses is the Company’s best estimate of the amount of probable credit losses in the Company’s existing accounts receivable and contract assets balances. The Company determines the current expected credit losses based on historical loss experience, current conditions, and reasonable and supportable forecasts. The Company also considers the nature of the financial asset, the credit quality of the counterparty, and other relevant factors.

Past due balances are reviewed individually for collectability. Account balances are charged off against the allowance for credit losses after all means of collection have been exhausted and the potential for recovery is considered by management to be remote.

Inventory

Inventory: Inventory primarily consists of 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 (i) raw materials purchased for specific manufacturing contracts that are valued at cost on the first-in, first-out basis; and (ii) potable water held in the Company’s reservoirs that is valued at the lower of the average cost of producing water during the year or its net realizable value.

Contract assets and liabilities

Contract assets and liabilities: Billing practices for the Company’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, which is recognized over time using the input method based on cost incurred. The Company records contract assets and contract liabilities to account for these differences in timing.

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 is recognized, and the liability is reduced, as the Company subsequently satisfies the performance obligation under the contract.

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 considered significant financing components.

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.

The Company’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.

Property, plant and equipment, net

Property, plant and equipment, net: 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:

Buildings

    

5 to 40 years

Plant and equipment

 

4 to 40 years

Distribution system

 

3 to 40 years

Office furniture, fixtures and equipment

 

3 to 10 years

Vehicles

 

3 to 10 years

Leasehold improvements

 

Shorter of 5 years or lease term

Lab equipment

 

5 to 10 years

Assets under construction are recorded as additions to property, plant and equipment upon completion of the projects. Depreciation commences in the 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.

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, 2023 or 2022.

Long-lived assets

Long-lived assets: 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.

Goodwill and intangible assets

Goodwill and intangible assets: Goodwill represents the excess cost of an acquired business over the fair value of the assets and liabilities of the acquired business as of the date of acquisition. Goodwill and intangible assets recorded as a result of a business combination 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 year. Management identifies the Company’s reporting units for goodwill impairment testing purposes, which consist of Cayman Water, the bulk segment (which is comprised of CW-Bahamas and OC-Cayman), PERC, and the manufacturing segment (i.e., Aerex), 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 these fair values to the carrying amounts of the reporting units. To the extent the carrying amount of a reporting unit exceeds the fair value of the reporting unit, an impairment loss is recorded.

For the year ended December 31, 2023, the Company elected to assess qualitative factors to determine whether it was necessary to perform the quantitative goodwill impairment testing that was conducted in prior years for the reporting units. The Company assessed the relevant events and circumstances to evaluate whether it is more likely than not that the fair values of such reporting units are less than their carrying values. The events and circumstances assessed for each reporting unit included macroeconomic conditions, industry and market conditions, cost factors, overall financial performance, and other relevant events. Based upon this qualitative assessment, the Company determined that it is more likely than not that the fair values of its reporting units exceeded their carrying values as of December 31, 2023.

For the year ended December 31, 2022, the Company elected to assess qualitative factors to determine whether it was necessary to perform the quantitative goodwill impairment testing conducted in prior years for all reporting units other than the manufacturing reporting unit. The Company assessed relevant events and circumstances to evaluate whether it is more likely than not that the fair values of such reporting units are less than their carrying values. The events and circumstances assessed for each reporting unit included macroeconomic conditions, industry and market conditions, cost factors, overall financial performance, and other relevant events. Based upon this qualitative assessment the Company determined that it was more likely than not that the fair values of its Cayman Water and bulk segment reporting units exceeded their carrying values as of December 31, 2022. Based upon the Company’s negotiated, arms-length purchase of the remaining 39% equity interest in PERC from its minority shareholders for $7.8 million in January 2023, the fair value of the Company’s PERC reporting unit exceeded its carrying value by 79% as of December 31, 2022.

Due to the factors discussed in the following paragraphs, the Company elected to test the goodwill associated with its manufacturing reporting unit for possible impairment for 2022 using the quantitative tests applied in prior years.

Approximately 80% of Aerex’s revenue, and 89% of Aerex’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’s revenue from this customer had 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’s future cash flows. Such projections assumed, in part, that Aerex’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’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.

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’s updated sales estimate for this customer based on this new information was substantially below the

anticipated sales to this customer for 2022 and subsequent years that the Company used in the discounted cash flow projections it prepared for purposes of testing its Manufacturing reporting unit’s goodwill for possible impairment as of December 31, 2020. Furthermore, Aerex’s efforts to replace the revenue previously generated from this customer with revenue from existing and new customers were adversely impacted by the negative economic conditions (caused in part by the COVID-19 pandemic). These negative economic conditions also increased Aerex’s raw material costs, resulted in raw material shortages and extended delivery times for such materials, and adversely affected the overall financial condition of Aerex’s current and prospective customers. Accordingly, in light of this new information from Aerex’s former major customer, and the on-going weak economic conditions that the Company believed would continue through 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 segment’s goodwill by this amount for the three months ended June 30, 2021.

For the year ended December 31, 2022, the Company estimated the fair value of its manufacturing reporting unit 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. The Company also estimated the fair value of its manufacturing reporting unit for the year ended December 31, 2022 by applying the guideline public company method. The Company weighted the fair values estimated for its manufacturing reporting unit under each method and summed such weighted fair values to estimate the overall fair value for the reporting unit. The respective weightings the Company applied to each method for the year ended December 31, 2022 were 80% to the discounted cash flow method and 20% to the guideline public company method.

The fair value the Company estimated for its manufacturing reporting unit exceeded its carrying amount by 63% as of December 31, 2022.

Investments

Investments: 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.

Other assets

Other assets: Under the terms of CW-Bahamas’ contract with the Water and Sewerage Corporation of The Bahamas (“WSC”) 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 31, 2023 and 2022. Accumulated amortization for these costs was approximately $3.1 million and $2.9 million as of December 31, 2023 and 2022, respectively. Amortization expense for these costs was $179,353 for the years ended December 31, 2023 and 2022.

Income taxes

Income taxes: 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 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.

The Company is not presently subject to income taxes in the other countries in which it operates.

Revenue recognition

Revenue recognition: Revenue is recognized when control of the promised goods or services is transferred to the Company’s customers, in an amount that reflects the consideration the Company expects to be entitled to in exchange for those goods or services.

The following table presents the Company’s revenue disaggregated by revenue source.

 

Year Ended December 31, 

 

2023

    

2022

Retail revenue

$

30,158,051

$

25,954,013

Bulk revenue

 

34,595,058

 

32,991,066

Services revenue

 

97,966,650

 

28,835,428

Manufacturing revenue

 

17,491,474

 

6,324,465

Total revenue

$

180,211,233

$

94,104,972

Services revenue consists of the following:

 

Year Ended December 31, 

 

2023

    

2022

Construction revenue

$

77,306,704

$

11,616,274

Operations and maintenance revenue

 

19,368,365

 

14,152,158

Design and consulting revenue

 

1,291,581

 

3,066,996

Total services revenue

$

97,966,650

$

28,835,428

Retail revenue

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. Customers are billed 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.

The Company recognizes revenue from water sales at the time water is supplied to the customer’s premises. The amount of water supplied is determined and invoiced based upon water meter readings performed at the end of each month. All retail water contracts are month-to-month contracts. The Company has elected the “right to invoice” 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, recognizing this revenue from the transfer of goods or services to customers at a point in time.

Bulk revenue

The Company produces and supplies water to government-owned utilities in the Cayman Islands and The Bahamas.

OC-Cayman provides bulk water to the Water Authority-Cayman (“WAC”), 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’s retail license area.

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 (“WSC”), which distributes such water through its own pipeline system to residential, commercial and tourist properties on the island of New Providence.

The Company has elected the “right to invoice” 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, recognizing this revenue from the transfer of goods or services to customers at a point in time.

Services and Manufacturing revenue

The Company designs, builds, sells, operates and maintains, and provides consulting services related to water, wastewater and water reuse infrastructure through PERC. All of PERC's customers are companies or governmental entities located in the United States. Effective October 2023, PERC acquired REC, a company that provides operations and maintenance and consulting services to companies and governmental entities located in the United States.

The Company also 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.

The Company, through Aerex, is a custom and specialty manufacturer of systems and products applicable to commercial, municipal and industrial water production and treatment. Substantially all of Aerex’s customers are U.S. companies.

The Company generates construction, operations and maintenance, design and consulting revenue from PERC and DesalCo and generates manufacturing revenue from Aerex. The Company also generates operations and maintenance and consulting revenue from REC.

The Company recognizes revenue for its construction and custom/specialized manufacturing contracts over time under the input method using costs incurred (which represents work performed) to date relative to the total estimated costs at completion to measure progress toward satisfying a contract’s performance obligations as such measure best reflects the transfer of control of the promised good to the customer. Contract costs include labor, materials, subcontractor costs and other expenses. 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 costs to be incurred 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 percentage of total estimated revenue that incurred costs to date comprise of estimated total contract costs. Due to the extended time it may take to complete many of the Company’s contracts and the scope and nature of the work required to be performed on those contracts, the estimations of total revenue and costs at completion are complicated and subject to many variables and, accordingly, are subject to changes. When adjustments in estimated total contract revenue or estimated total contract costs are required, any changes from prior estimates are recognized in the current period for the inception-to-date effect of such changes. 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.

During the year ended December 31, 2023, the Company adjusted its prior year estimates of the total contract costs for two of its construction contracts. These changes in accounting estimates resulted in an increase in the services segment’s income from operations and the Company’s consolidated net income by $2,356,439 and $1,750,750, respectively, for the year ended December 31, 2023. This adjustment increased basic and diluted earnings per share by $0.11 for the year ended December 31, 2023.

The Company has elected the “right to invoice” practical expedient for revenue recognition on its operations and maintenance, design and consulting contracts and recognizes revenue in the amount to which the Company has a right to invoice, recognizing this revenue from the transfer of goods or services to customers at a point in time.

During the years ended December 31, 2023 and 2022, the Company recognized $77,411,792 and $14,146,271, respectively, of its services revenue from the transfer of goods or services to customers over time. The remaining services revenue of $20,554,858 and $14,689,157, respectively, was recognized from the transfer of goods or services to customers at a point in time. During the years ended December 31, 2023 and 2022, the Company recognized all of its manufacturing revenue from the transfer of goods or services to customers over time.

Practical Expedients and Exemptions

The Company does not disclose the value of unsatisfied performance obligations for (i) contracts with an original expected length of one year or less and (ii) contracts for which the Company recognizes revenue at the amount to which it has the right to invoice for services performed.

Comparative amounts

Comparative amounts: Certain amounts presented in the financial statements previously issued for 2022 have been reclassified to conform to the current year’s presentation.

XML 50 R33.htm IDEA: XBRL DOCUMENT v3.24.1
Accounting policies (Tables)
12 Months Ended
Dec. 31, 2023
Accounting policies  
Schedule of Estimated useful lives

Buildings

    

5 to 40 years

Plant and equipment

 

4 to 40 years

Distribution system

 

3 to 40 years

Office furniture, fixtures and equipment

 

3 to 10 years

Vehicles

 

3 to 10 years

Leasehold improvements

 

Shorter of 5 years or lease term

Lab equipment

 

5 to 10 years

Schedule of Disaggregation of revenue

The following table presents the Company’s revenue disaggregated by revenue source.

 

Year Ended December 31, 

 

2023

    

2022

Retail revenue

$

30,158,051

$

25,954,013

Bulk revenue

 

34,595,058

 

32,991,066

Services revenue

 

97,966,650

 

28,835,428

Manufacturing revenue

 

17,491,474

 

6,324,465

Total revenue

$

180,211,233

$

94,104,972

Services revenue consists of the following:

 

Year Ended December 31, 

 

2023

    

2022

Construction revenue

$

77,306,704

$

11,616,274

Operations and maintenance revenue

 

19,368,365

 

14,152,158

Design and consulting revenue

 

1,291,581

 

3,066,996

Total services revenue

$

97,966,650

$

28,835,428

XML 51 R34.htm IDEA: XBRL DOCUMENT v3.24.1
Cash and cash equivalents (Tables)
12 Months Ended
Dec. 31, 2023
Cash and cash equivalents  
Schedule of Cash and cash equivalents

December 31, 

    

2023

    

2022

Bank accounts:

 

  

 

  

United States dollar

$

15,857,612

$

24,573,161

Cayman Islands dollar

 

11,826,102

 

14,956,162

Bahamian dollar

 

3,025,898

 

5,698,100

 

30,709,612

 

45,227,423

Short-term deposits:

 

  

 

  

United States dollar

 

8,861,606

 

2,476,370

Cayman Islands dollar

 

3,050,680

 

3,007,958

 

11,912,286

 

5,484,328

Total cash and cash equivalents

$

42,621,898

$

50,711,751

XML 52 R35.htm IDEA: XBRL DOCUMENT v3.24.1
Accounts receivable, net (Tables)
12 Months Ended
Dec. 31, 2023
Accounts receivable, net.  
Schedule of Accounts receivable

December 31, 

    

2023

    

2022

Trade accounts receivable

$

38,446,554

$

27,163,719

Receivable from OC-BVI

 

41,129

 

37,293

Other accounts receivable

 

322,609

 

28,384

 

38,810,292

 

27,229,396

Allowance for credit losses

 

(583,401)

 

(183,214)

Accounts receivable, net

$

38,226,891

$

27,046,182

Schedule of Allowance for doubtful accounts

The activity for the allowance for credit losses consisted of:

December 31, 

    

2023

    

2022

Opening allowance for credit losses

$

183,214

$

183,020

Provision for credit losses

 

408,489

 

Accounts written off during the year

 

(9,215)

 

(726)

Recovery of accounts written off

913

920

Ending allowance for credit losses

$

583,401

$

183,214

XML 53 R36.htm IDEA: XBRL DOCUMENT v3.24.1
Inventory (Tables)
12 Months Ended
Dec. 31, 2023
Inventory  
Schedule of Inventory

December 31, 

    

2023

    

2022

Spare parts stock

$

7,747,455

$

6,514,333

Raw materials

3,135,357

3,481,486

Consumables stock

 

166,935

 

246,355

Water stock

40,666

36,655

Total inventory

 

11,090,413

 

10,278,829

Less current portion

 

6,044,642

 

5,727,842

Inventory (non-current)

$

5,045,771

$

4,550,987

XML 54 R37.htm IDEA: XBRL DOCUMENT v3.24.1
Contracts in progress (Tables)
12 Months Ended
Dec. 31, 2023
Contracts in progress.  
Summary of information relative to revenue recognized and amounts billed on contracts in progress

Revenue recognized and amounts billed on contracts in progress are summarized as follows:

December 31, 

2023

2022

Revenue recognized to date on contracts in progress

    

$

108,952,682

    

$

25,469,014

Amounts billed to date on contracts in progress

 

(101,724,459)

 

(33,407,182)

Retainage

8,087,823

2,047,969

Net contract asset/(liability)

$

15,316,046

$

(5,890,199)

The above net balances are reflected in the accompanying consolidated balance sheet as follows:

December 31,

2023

2022

Contract assets

    

$

21,553,057

    

$

2,913,722

Contract liabilities

 

(6,237,011)

 

(8,803,921)

Net contract asset/(liability)

$

15,316,046

$

(5,890,199)

XML 55 R38.htm IDEA: XBRL DOCUMENT v3.24.1
Property, plant and equipment and construction in progress (Tables)
12 Months Ended
Dec. 31, 2023
Property, plant and equipment and construction in progress  
Schedule of Property, plant and equipment and construction in progress

December 31, 

    

2023

    

2022

Land

$

6,488,400

$

6,488,400

Buildings

 

26,044,551

 

23,280,880

Plant and equipment

 

66,000,977

 

64,532,994

Distribution system

 

39,546,175

 

39,544,395

Office furniture, fixtures and equipment

 

3,338,760

 

3,109,546

Vehicles

 

3,433,561

 

2,525,576

Leasehold improvements

 

306,545

 

287,980

Lab equipment

 

12,456

 

12,456

 

145,171,425

 

139,782,227

Less accumulated depreciation

 

89,288,904

 

87,252,682

Property, plant and equipment, net

$

55,882,521

$

52,529,545

Construction in progress

$

495,471

$

3,705,681

XML 56 R39.htm IDEA: XBRL DOCUMENT v3.24.1
Discontinued operations (Tables)
12 Months Ended
Dec. 31, 2023
Discontinued operations  
Schedule of financial information for Mexico project development

Summarized financial information for the discontinued Mexico project development operation is as follows:

December 31, 

2023

2022

    

Cash

   

$

91,283

   

$

442,252

Accounts receivable

12,675

Prepaid expenses and other current assets

120,234

76,553

Land

 

21,126,898

 

21,126,898

Other assets

 

2,390

 

2,390

Total assets of discontinued operations

$

21,340,805

$

21,660,768

 

  

 

  

Total liabilities of discontinued operations

$

364,665

$

389,884

Year Ended December 31, 

2023

    

2022

Revenue

    

$

    

$

Loss from discontinued operations

$

1,086,744

$

2,371,049

Depreciation expense

$

$

XML 57 R40.htm IDEA: XBRL DOCUMENT v3.24.1
Intangible assets (Tables)
12 Months Ended
Dec. 31, 2023
Intangible assets  
Schedule of Finite-Lived Intangible Assets

December 31, 

    

2023

    

2022

Cost

 

  

 

  

Non-compete agreements

$

268,590

$

Trade names

 

3,096,900

 

2,700,000

Customer relationships

442,900

Facility management contracts

 

2,200,000

 

2,200,000

 

6,008,390

 

4,900,000

Accumulated amortization

 

 

  

Non-compete agreements

 

(13,430)

 

Trade names

 

(1,106,615)

 

(920,000)

Customer relationships

(7,382)

Facility management contracts

 

(1,527,778)

 

(1,161,112)

 

(2,655,205)

 

(2,081,112)

Intangible assets, net

$

3,353,185

$

2,818,888

Schedule of Finite-Lived Intangible Assets, Future Amortization Expense

Amortization of intangible assets for each of the next five years and thereafter is expected to be as follows:

2024

    

$

656,371

2025

 

595,260

2026

 

289,705

2027

 

289,705

2028

 

276,275

Thereafter

 

1,245,869

$

3,353,185

XML 58 R41.htm IDEA: XBRL DOCUMENT v3.24.1
Leases (Tables)
12 Months Ended
Dec. 31, 2023
Leases  
Schedule of lease-related assets and liabilities

The following table presents the lease-related assets and liabilities and their respective classification on the consolidated balance sheets:

    

December 31, 

December 31, 

2023

2022

ASSETS

 

  

Current

 

  

  

Prepaid expenses and other current assets

$

110,541

$

35,624

Current assets of discontinued operations

7,979

Noncurrent

 

 

Operating lease right-of-use assets

 

2,135,446

 

2,058,384

Total lease right-of-use assets

$

2,245,987

$

2,101,987

LIABILITIES

    

  

 

  

Current

 

  

  

Current maturities of operating leases

$

456,865

$

546,851

Current liabilities of discontinued operations

7,361

Noncurrent

 

 

Noncurrent operating leases

1,827,302

1,590,542

Total lease liabilities

$

2,284,167

$

2,144,754

Weighted average remaining lease term:

 

  

 

  

Operating leases

 

6.1 years

 

6.6 years

Operating leases - discontinued operations

0.0 years

0.8 years

 

 

Weighted average discount rate:

 

 

Operating leases

 

5.67%

 

5.11%

Operating leases - discontinued operations

0.00%

4.96%

Schedule of Lease, Cost

The components of lease costs were as follows:

    

    

Year Ended December 31, 

2023

2022

Operating lease costs

$

751,261

$

692,404

Short-term lease costs

 

217,640

100,975

Lease costs - discontinued operations

45,979

40,021

Total lease costs

$

1,014,880

$

833,400

Schedule of Cash Flow, Supplemental

Supplemental cash flow information related to leases is as follows:

    

Year Ended December 31, 

2023

2022

Cash paid for amounts included in measurement of liabilities:

 

  

Operating cash outflows for operating leases

$

760,847

$

742,696

Operating cash outflows for operating leases - discontinued operations

11,337

9,590

Schedule of future lease payments relating to the Company's operating lease liabilities

Years ending December 31, 

    

Total

2024

$

580,780

2025

 

462,990

2026

 

379,019

2027

 

336,597

2028

341,687

Thereafter

 

639,928

Total future lease payments

 

2,741,001

Less: imputed interest

 

(456,834)

Total lease obligations

 

2,284,167

Less: current obligations

 

(456,865)

Noncurrent lease obligations

$

1,827,302

XML 59 R42.htm IDEA: XBRL DOCUMENT v3.24.1
Income taxes (Tables)
12 Months Ended
Dec. 31, 2023
Income taxes  
Schedule of components of income before income taxes

The components of income before income taxes for the years ended December 31, 2023 and 2022 are as follows:

Year Ended December 31, 

    

2023

    

2022

Foreign (not subject to income taxes)

$

10,002,233

$

6,958,583

Mexico

 

(742,367)

 

(987,279)

United States

 

27,649,330

 

1,394,642

 

36,909,196

 

7,365,946

Discontinued operations

 

1,086,744

 

2,371,049

$

37,995,940

$

9,736,995

Schedule of provision for income taxes deferred tax benefit relating to U.S. operations

The Company’s provision for (benefit from) income taxes for the years ended December 31, 2023 and 2022, which related to U.S. operations, consisted of the following:

Year Ended December 31, 

    

2023

    

2022

Current:

Federal

$

5,611,360

$

430,116

State

1,663,653

(29,157)

Foreign

Total current income tax expense (benefit)

7,275,013

400,959

Deferred:

 

 

Federal

(276,070)

(184,469)

State

(248,929)

180,249

Foreign

Total deferred income tax expense (benefit)

(524,999)

(4,220)

Total provision for (benefit from) income taxes

$

6,750,014

$

396,739

Schedule of reconciliation of federal tax rate to the effective rate

A reconciliation of the U.S. statutory federal tax rate to the effective rate for the years ended December 31, 2023 and 2022 is as follows:

Year Ended December 31, 

 

    

2023

    

2022

 

U.S. statutory federal rate

21.00

%  

21.00

%

State taxes, net of federal effect

 

2.88

%  

8.88

%

Foreign rate differential

 

(5.71)

%  

(25.57)

%

Research and development tax credit

 

%  

(1.92)

%

Permanent items

 

(0.32)

%  

(0.70)

%

Change in valuation allowance

 

(0.08)

%  

2.38

%

 

17.77

%  

4.07

%

Schedule of tax effects of significant items net long-term deferred tax assets liability

The tax effects of significant items comprising the Company’s net long-term deferred tax liability as of December 31, 2023 and 2022 were as follows:

December 31, 

    

2023

    

2022

Continuing Operations

Deferred tax assets:

 

  

 

  

Research and development credit carryforwards

$

$

58,069

Net operating loss carryforwards

130,911

443,076

Accruals and reserves

146,057

82,503

Operating lease liabilities

501,397

412,840

Capitalized research expenditures

326,178

Others

29,094

Valuation allowances

 

 

(29,036)

 

1,133,637

 

967,452

Deferred tax liabilities:

 

  

 

  

Property and equipment

 

325,473

 

293,195

Intangible assets

 

847,450

 

821,723

Operating lease right-of-use assets

 

491,494

 

412,840

 

1,664,417

 

1,527,758

Net deferred tax liabilities

$

(530,780)

$

(560,306)

Discontinued Operations

Deferred tax assets:

Operating loss carryforwards - Mexico

$

5,844,847

$

5,378,177

Land basis difference - Mexico

2,818,663

2,163,681

Start-up costs - Mexico

7,015,484

4,274,858

Valuation allowances

(15,678,994)

(11,816,716)

$

$

XML 60 R43.htm IDEA: XBRL DOCUMENT v3.24.1
Earnings per share (Tables)
12 Months Ended
Dec. 31, 2023
Earnings per share  
Schedule of computation of basic and diluted EPS

 

Year Ended December 31, 

 

2023

    

2022

Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders

$

30,672,135

$

8,227,343

Less: preferred stock dividends

 

(15,513)

 

(11,532)

Net income from continuing operations available to common shares in the determination of basic earnings per common share

 

30,656,622

 

8,215,811

Loss from discontinued operations

 

(1,086,744)

 

(2,371,049)

Net income available to common shares in the determination of basic earnings per common share

$

29,569,878

$

5,844,762

Weighted average number of common shares in the determination of basic earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders

 

15,739,056

 

15,290,509

Plus:

 

 

Weighted average number of preferred shares outstanding during the period

 

39,885

 

31,885

Potential dilutive effect of unexercised options and unvested stock grants

 

86,956

 

79,259

Weighted average number of shares used for determining diluted earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders

 

15,865,897

 

15,401,653

XML 61 R44.htm IDEA: XBRL DOCUMENT v3.24.1
Dividends (Tables)
12 Months Ended
Dec. 31, 2023
Dividends.  
Schedule of dividends

    

2023

    

2022

First Quarter

$

0.085

$

0.085

Second Quarter

 

0.085

 

0.085

Third Quarter

 

0.095

 

0.085

Fourth Quarter

 

0.095

 

0.085

$

0.36

$

0.34

XML 62 R45.htm IDEA: XBRL DOCUMENT v3.24.1
Segment information (Tables)
12 Months Ended
Dec. 31, 2023
Segment information  
Schedule of segment reporting information, by segment

The Company’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.

 

Year Ended December 31, 2023

 

Retail

    

Bulk

    

Services

    

Manufacturing

    

Total

Revenue

$

30,158,051

$

34,595,058

$

97,966,650

$

17,491,474

    

$

180,211,233

Cost of revenue

 

13,891,229

 

24,128,132

 

66,797,762

 

13,467,005

 

118,284,128

Gross profit

 

16,266,822

 

10,466,926

 

31,168,888

 

4,024,469

 

61,927,105

General and administrative expenses

 

16,905,010

 

1,737,264

 

4,271,808

 

1,838,284

 

24,752,366

Gain (loss) on asset dispositions and impairments, net

 

(22,065)

 

12,720

 

 

2,233

 

(7,112)

Income (loss) from operations

$

(660,253)

$

8,742,382

$

26,897,080

$

2,188,418

 

37,167,627

Other income, net

 

  

 

  

 

 

  

828,313

Income before income taxes

 

  

 

  

 

  

 

  

 

37,995,940

Provision for income taxes

 

  

 

  

 

  

 

  

 

6,750,014

Net income from continuing operations

 

  

 

  

 

  

 

  

 

31,245,926

Income from continuing operations attributable to non-controlling interests

 

  

 

  

 

  

 

  

 

573,791

Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders

 

  

 

  

 

  

 

  

 

30,672,135

Loss from discontinued operations

 

  

 

  

 

  

 

  

 

(1,086,744)

Net income attributable to Consolidated Water Co. Ltd. stockholders

 

  

 

  

 

  

 

  

$

29,585,391

Depreciation and amortization expenses for the year ended December 31, 2023 for the retail, bulk, services and manufacturing segments were $2,484,845, $3,032,902, $785,347 and $273,360, respectively.

 

As of December 31, 2023

 

Retail

    

Bulk

    

Services

    

Manufacturing

    

Total

Accounts receivable, net

$

3,425,948

$

26,965,126

$

6,802,780

$

1,033,037

$

38,226,891

Inventory, current and non-current

$

3,041,460

$

4,858,324

$

55,272

$

3,135,357

$

11,090,413

Contract assets

$

$

$

17,715,872

$

3,837,185

$

21,553,057

Property, plant and equipment, net

$

32,809,487

$

20,370,056

$

1,143,884

$

1,559,094

$

55,882,521

Construction in progress

$

380,436

$

$

$

115,035

$

495,471

Intangibles, net

$

$

$

2,692,074

$

661,111

$

3,353,185

Goodwill

$

1,170,511

$

1,948,875

$

7,756,807

$

1,985,211

$

12,861,404

Total segment assets

$

58,774,647

$

63,956,725

$

58,476,773

$

15,888,642

$

197,096,787

Assets of discontinued operations

$

21,340,805

Total assets

$

218,437,592

 

Year Ended December 31, 2022

 

Retail

    

Bulk

    

Services

    

Manufacturing

    

Total

Revenue

$

25,954,013

$

32,991,066

$

28,835,428

$

6,324,465

$

94,104,972

Cost of revenue

 

12,548,763

 

23,032,212

 

22,973,634

 

5,195,240

 

63,749,849

Gross profit

 

13,405,250

 

9,958,854

 

5,861,794

 

1,129,225

 

30,355,123

General and administrative expenses

 

14,552,866

 

1,570,732

 

3,461,294

 

1,485,342

 

21,070,234

Gain (loss) on asset dispositions and impairments, net

 

(39,397)

 

5,607

 

23,717

 

(2,631)

 

(12,704)

Income (loss) from operations

$

(1,187,013)

$

8,393,729

$

2,424,217

$

(358,748)

 

9,272,185

Other income, net

 

  

 

  

 

  

 

  

 

464,810

Income before income taxes

 

  

 

  

 

  

 

  

 

9,736,995

Provision for income taxes

396,739

Net income from continuing operations

 

  

 

  

 

  

 

  

 

9,340,256

Income from continuing operations attributable to non-controlling interests

 

  

 

  

 

  

 

  

 

1,112,913

Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders

 

  

 

  

 

  

 

  

 

8,227,343

Loss from discontinued operations

 

  

 

  

 

  

 

  

 

(2,371,049)

Net income attributable to Consolidated Water Co. Ltd. stockholders

 

  

 

  

 

  

 

  

$

5,856,294

Depreciation and amortization expenses for the year ended December 31, 2022 for the retail, bulk, services and manufacturing segments were $2,391,603, $2,836,794, $674,508 and $284,403, respectively.

 

As of December 31, 2022

 

Retail

    

Bulk

    

Services

    

Manufacturing

    

Total

Accounts receivable, net

$

2,953,927

$

16,554,940

$

5,838,721

$

1,698,594

$

27,046,182

Inventory, current and non-current

$

2,759,659

$

4,037,684

$

$

3,481,486

$

10,278,829

Contract assets

$

$

$

1,249,069

$

1,664,653

$

2,913,722

Property, plant and equipment, net

$

27,697,490

$

22,510,658

$

759,409

$

1,561,988

$

52,529,545

Construction in progress

$

3,643,889

$

$

$

61,792

$

3,705,681

Intangibles, net

$

$

$

2,064,444

$

754,444

$

2,818,888

Goodwill

$

1,170,511

$

1,948,875

$

5,320,416

$

1,985,211

$

10,425,013

Total segment assets

$

65,853,789

$

56,118,243

$

36,319,078

$

13,054,971

$

171,346,081

Assets of discontinued operations

 

 

 

 

$

21,660,768

Total assets

 

 

 

 

$

193,006,849

Schedule of revenues earned by major geographic region

Year ended December 31, 

    

2023

    

2022

Cayman Islands

$

41,728,340

$

30,375,985

The Bahamas

 

31,221,633

 

29,943,615

United States

 

106,768,621

 

33,338,466

Revenue earned from management services agreement with OC-BVI

 

492,639

 

446,906

$

180,211,233

$

94,104,972

Revenue earned from major customers was:

Year ended December 31, 

    

2023

    

2022

Revenue earned from the WSC

$

31,221,633

$

29,943,615

Percentage of consolidated revenue earned from the WSC

 

17%

 

32%

Revenue earned from one service segment customer

$

64,149,170

$

11,805,752

Percentage of consolidated revenue earned from the one service segment customer

 

36%

 

13%

Schedule of long-lived assets by geographic areas

December 31, 

    

2023

    

2022

Cayman Islands

$

32,902,949

$

28,068,156

The Bahamas

 

20,039,049

 

22,031,690

United States

 

2,940,523

 

2,429,699

$

55,882,521

$

52,529,545

XML 63 R46.htm IDEA: XBRL DOCUMENT v3.24.1
Cost of revenues and general and administrative expenses (Tables)
12 Months Ended
Dec. 31, 2023
Cost of revenues and general and administrative expenses  
Schedule of cost of revenues and general and administrative expenses

Year Ended December 31, 

    

2023

    

2022

Cost of revenue consist of:

Subcontractor and other project costs

$

64,806,072

$

17,847,124

Employee costs

 

18,935,014

 

14,036,117

Electricity

 

9,502,666

 

6,975,129

Fuel oil

 

9,024,836

 

10,203,690

Depreciation

 

5,632,998

 

5,261,463

Maintenance

 

2,992,872

 

2,786,258

Insurance

 

2,061,497

 

1,782,333

Retail license royalties

 

1,842,924

 

1,590,250

Other

 

3,485,249

 

3,267,485

$

118,284,128

$

63,749,849

Year Ended December 31, 

2023

2022

General and administrative expenses consist of:

 

  

 

  

Employee costs

$

13,690,152

$

11,209,635

Professional fees

 

2,012,092

 

1,760,279

Insurance

 

1,903,856

 

2,067,625

Directors’ fees and expenses

 

980,759

 

991,592

Office rent

882,686

793,380

Amortization of intangible assets

 

574,093

 

582,778

Investor relations

534,979

354,158

Business development expenses

578,086

395,660

Provision for credit losses

408,489

Computer supplies, software licenses

387,335

322,310

Bank charges

341,263

490,237

Depreciation

 

190,010

 

163,714

Other

 

2,268,566

 

1,938,866

$

24,752,366

$

21,070,234

XML 64 R47.htm IDEA: XBRL DOCUMENT v3.24.1
Stock-based compensation (Tables)
12 Months Ended
Dec. 31, 2023
Stock-based compensation  
Schedule of significant weighted average assumptions

    

2023

    

2022

 

Risk free interest rate

 

5.06

%  

1.64

%

Expected option life (years)

 

1.0

 

1.2

Expected volatility

 

42.42

%  

47.15

%

Expected dividend yield

 

1.60

%  

2.35

%

Schedule of company's stock option activity

A summary of the Company’s stock option activity for the year ended December 31, 2023 is as follows:

Weighted

Weighted

Average

Average

Remaining

Aggregate

Exercise

Contractual

Intrinsic

    

Options

    

Price

    

Life (Years)

    

Value (1)

Outstanding at beginning of period

 

11,740

$

13.59

 

  

 

  

Granted

 

16,319

 

13.62

 

  

 

  

Exercised

 

(8,231)

 

12.12

 

  

 

  

Forfeited/expired

 

(7,653)

 

11.28

 

  

 

  

Outstanding as of December 31, 2023

 

12,175

$

16.08

 

2.29

years  

$

237,705

Exercisable as of December 31, 2023

 

$

 

years  

$

(1)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 $35.60 on the Nasdaq Global Select Market on December 31, 2023, exceeds the exercise price of the option.
Schedule of weighted average fair value of options at the date of grant and the intrinsic value

    

2023

    

2022

Options granted with an exercise price below market price on the date of grant:

 

  

 

  

Employees — preferred stock

$

12.21

$

5.58

Overall weighted average

 

12.21

 

5.58

Options granted with an exercise price at market price on the date of grant:

 

  

 

  

Management employees

$

$

Employees — common stock

 

8.29

 

4.32

Overall weighted average

 

8.29

 

4.32

Options granted with an exercise price above market price on the date of grant:

 

  

 

  

Management employees

$

$

Employees — preferred stock

 

 

Overall weighted average

 

 

Total intrinsic value of options exercised

$

104,559

$

17,158

XML 65 R48.htm IDEA: XBRL DOCUMENT v3.24.1
Supplemental disclosure of cash flow information (Tables)
12 Months Ended
Dec. 31, 2023
Supplemental disclosure of cash flow information  
Schedule of Supplemental disclosure of cash flow information

Year Ended December 31, 

    

2023

    

2022

Interest paid in cash

$

21,417

$

14,797

Income taxes paid in cash

$

4,920,912

$

211,000

Non-cash transactions:

 

 

  

Issuance of 13,309 and 9,295, respectively, shares of redeemable preferred stock for services rendered

$

323,275

$

133,197

Issuance of 68,864 and 72,597, respectively, shares of common stock for services rendered

$

1,015,177

$

877,298

Conversion (on a one-to-one basis) of 8,848 and 6,585, respectively, shares of redeemable preferred stock to common stock

$

5,309

$

3,951

Dividends declared but not paid

$

1,502,506

$

1,305,367

Issuance of 368,383 and 0, respectively, shares of common stock for the purchase of non-controlling interest in PERC

$

5,359,973

$

Transfers from inventory to property, plant and equipment and construction in progress

$

317,853

$

346,024

Transfers from construction in progress to property, plant and equipment

$

7,093,158

$

297,723

Right-of-use assets obtained in exchange for new operating lease liabilities

$

745,078

$

Purchase of equipment through issuance of long-term debt

$

$

188,645

XML 66 R49.htm IDEA: XBRL DOCUMENT v3.24.1
Accounting policies - Additional Information (Details)
gal in Millions
1 Months Ended 12 Months Ended 24 Months Ended
Jun. 02, 2023
gal
Nov. 30, 2023
USD ($)
Jan. 31, 2023
USD ($)
shares
Dec. 31, 2022
USD ($)
Dec. 31, 2023
USD ($)
Oct. 01, 2023
Jan. 04, 2023
Intangibles, net       $ 2,818,888 $ 3,353,185    
Goodwill       10,425,013 12,861,404    
Interest Capitalized       0 0    
PERC Water Corporation              
Ownership interest held     100.00%       100.00%
Shares of the Company's common stock | shares     368,383        
Amount of consideration paid     $ 7,800,000        
Common stock value     $ 5,360,000        
Kalaeloa Desalco              
Seawater Reverse Osmosis Desalination Plant Per Day Processing Capacity | gal 1.7            
PERC Water Corporation              
Ownership interest acquired     39.00%       39.00%
Amount of consideration paid     $ 2,400,000        
Ramey Environmental Compliance, Inc (REC)              
Ownership interest acquired           100.00%  
Amount of consideration paid   $ 4,100,000          
Intangibles, net   1,108,390          
Goodwill   $ 2,436,391          
Retail [Member]              
Goodwill       1,170,511 1,170,511    
Bulk [Member]              
Goodwill       1,948,875 1,948,875    
Services [Member]              
Intangibles, net       2,064,444 2,692,074    
Goodwill       5,320,416 7,756,807    
Manufacturing Units [Member]              
Intangibles, net       754,444 661,111    
Goodwill       $ 1,985,211 $ 1,985,211    
XML 67 R50.htm IDEA: XBRL DOCUMENT v3.24.1
Accounting policies - Cash and cash equivalents (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents [Abstract]    
Net foreign currency gains $ 84,678 $ 41,750
Cash and cash equivalents 11,912,286 5,484,328
Deposits 16,900,000  
Cash held in foreign bank accounts 24,200,000  
Deposits held in foreign bank 3,000,000.0 5,700,000
Certificate of deposit    
Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents [Abstract]    
Cash and cash equivalents $ 5,100,000 $ 5,000,000.0
XML 68 R51.htm IDEA: XBRL DOCUMENT v3.24.1
Accounting policies - Property, plant and equipment (Details)
Dec. 31, 2023
Property, Plant and Equipment, Estimated Useful Lives us-gaap:UsefulLifeShorterOfTermOfLeaseOrAssetUtilityMember
Building [Member] | Maximum [Member]  
Property, Plant and Equipment, Useful Life 40 years
Building [Member] | Minimum [Member]  
Property, Plant and Equipment, Useful Life 5 years
Plant And Equipment [Member] | Maximum [Member]  
Property, Plant and Equipment, Useful Life 40 years
Plant And Equipment [Member] | Minimum [Member]  
Property, Plant and Equipment, Useful Life 4 years
Distribution Systems [Member] | Maximum [Member]  
Property, Plant and Equipment, Useful Life 40 years
Distribution Systems [Member] | Minimum [Member]  
Property, Plant and Equipment, Useful Life 3 years
Office furniture, fixtures and equipment [Member] | Maximum [Member]  
Property, Plant and Equipment, Useful Life 10 years
Office furniture, fixtures and equipment [Member] | Minimum [Member]  
Property, Plant and Equipment, Useful Life 3 years
Vehicles [Member] | Maximum [Member]  
Property, Plant and Equipment, Useful Life 10 years
Vehicles [Member] | Minimum [Member]  
Property, Plant and Equipment, Useful Life 3 years
Lab equipment [Member] | Maximum [Member]  
Property, Plant and Equipment, Useful Life 10 years
Lab equipment [Member] | Minimum [Member]  
Property, Plant and Equipment, Useful Life 5 years
XML 69 R52.htm IDEA: XBRL DOCUMENT v3.24.1
Accounting policies - Goodwill and intangible assets (Details) - USD ($)
1 Months Ended 6 Months Ended 12 Months Ended
Jan. 31, 2023
Jun. 30, 2021
Dec. 31, 2022
Dec. 31, 2020
Dec. 31, 2023
Jan. 04, 2023
Goodwill     $ 10,425,013   $ 12,861,404  
Intangible assets, net     2,818,888   3,353,185  
Retail [Member]            
Goodwill     1,170,511   1,170,511  
Bulk [Member]            
Goodwill     1,948,875   1,948,875  
Services [Member]            
Goodwill     5,320,416   7,756,807  
Intangible assets, net     2,064,444   2,692,074  
Manufacturing Units [Member]            
Goodwill     1,985,211   1,985,211  
Intangible assets, net     $ 754,444   $ 661,111  
Aerex | Manufacturing Units [Member]            
Estimated Fair Value Carrying Amount Exceeded Percentage     63 31    
Estimated Fair Value carrying Amount Exceeded Value   $ 2,900,000        
Aerex | Discounted Cash Flow Method [Member] | Manufacturing Units [Member]            
Estimated Fair Value Percentage Segment Reporting Information   80.00% 80.00% 80.00%    
Aerex | Guideline Public Company Method [Member] | Manufacturing Units [Member]            
Estimated Fair Value Percentage Segment Reporting Information   20.00% 20.00% 20.00%    
PERC Water Corporation            
Ownership interest acquired 39.00%         39.00%
Amount of consideration paid $ 2,400,000          
Estimated Fair Value Percentage Segment Reporting Information     79.00%      
XML 70 R53.htm IDEA: XBRL DOCUMENT v3.24.1
Accounting policies - Investments and Other assets (Details)
gal in Millions
12 Months Ended 24 Months Ended
Dec. 31, 2023
USD ($)
gal
Dec. 31, 2023
USD ($)
Dec. 31, 2022
USD ($)
Criteria for recognizing investment at cost 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.    
Equity Method Investment, Additional Information 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.    
Accumulated Amortization of Other Deferred Costs $ 3,100,000 $ 3,100,000 $ 2,900,000
Amortization of Other Deferred Charges   179,353  
Amount required to reduce the amount of water lost by the public water distribution system | gal 438    
Capitalized Engineering Labor and Materials Cost [Member]      
Other Assets $ 3,500,000 $ 3,500,000  
XML 71 R54.htm IDEA: XBRL DOCUMENT v3.24.1
Accounting policies - Disaggregated revenue (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Total Revenue $ 180,211,233 $ 94,104,972
Contracts in progress.    
Number of days after consumption billings are considered past due 45 days  
Net Income (Loss) $ 29,585,391 5,856,294
Income from operations $ 37,167,627 $ 9,272,185
Increase in basic earnings $ 1.95 $ 0.54
Increase in diluted earnings $ 1.93 $ 0.54
Change in Accounting Method Accounted for as Change in Estimate [Member]    
Contracts in progress.    
Net Income (Loss) $ 1,750,750  
Income from operations $ 2,356,439  
Increase in basic earnings $ 0.11  
Increase in diluted earnings $ 0.11  
Minimum [Member]    
Contracts in progress.    
Number of days after consumption billings are collected 30 days  
Maximum [Member]    
Contracts in progress.    
Number of days after consumption billings are collected 45 days  
Retail revenue [Member]    
Total Revenue $ 30,158,051 $ 25,954,013
Bulk revenue [Member]    
Total Revenue 34,595,058 32,991,066
Services revenue [Member]    
Total Revenue 97,966,650 28,835,428
Services revenue [Member] | Change in Accounting Method Accounted for as Change in Estimate [Member]    
Contracts in progress.    
Income from operations 2,356,439  
Services revenue [Member] | Transferred over Time [Member]    
Total Revenue 77,411,792 14,146,271
Services revenue [Member] | Transferred at Point in Time [Member]    
Total Revenue 20,554,858 14,689,157
Manufacturing revenue [Member]    
Total Revenue 17,491,474 6,324,465
Construction Sevices [Member]    
Total Revenue 77,306,704 11,616,274
Operations and Maintenance [Member]    
Total Revenue 19,368,365 14,152,158
Design and Consulting Services [Member]    
Total Revenue $ 1,291,581 $ 3,066,996
XML 72 R55.htm IDEA: XBRL DOCUMENT v3.24.1
Cash and cash equivalents (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Cash and Cash Equivalents [Line Items]    
Bank accounts $ 30,709,612 $ 45,227,423
Short term deposits 11,912,286 5,484,328
Cash and cash equivalents at end of period 42,621,898 50,711,751
United States dollar [Member]    
Cash and Cash Equivalents [Line Items]    
Bank accounts 15,857,612 24,573,161
Short term deposits 8,861,606 2,476,370
Cayman Islands dollar [Member]    
Cash and Cash Equivalents [Line Items]    
Bank accounts 11,826,102 14,956,162
Short term deposits 3,050,680 3,007,958
Bahamian dollar [Member]    
Cash and Cash Equivalents [Line Items]    
Bank accounts $ 3,025,898 $ 5,698,100
XML 73 R56.htm IDEA: XBRL DOCUMENT v3.24.1
Accounts receivable, net (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Accounts receivable, net.      
Trade accounts receivable $ 38,446,554 $ 27,163,719  
Receivable from OC-BVI 41,129 37,293  
Other accounts receivable 322,609 28,384  
Accounts Receivable, Gross, Current 38,810,292 27,229,396  
Allowance for doubtful accounts (583,401) (183,214) $ (183,020)
Accounts receivable, net $ 38,226,891 $ 27,046,182  
XML 74 R57.htm IDEA: XBRL DOCUMENT v3.24.1
Accounts receivable, net - Allowance for doubtful accounts (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Accounts receivable, net.    
Opening allowance for doubtful accounts $ 183,214 $ 183,020
Provision for credit losses 408,489 0
Accounts written off during the year (9,215) (726)
Recovery of accounts written off 913 920
Ending allowance for doubtful accounts $ 583,401 $ 183,214
XML 75 R58.htm IDEA: XBRL DOCUMENT v3.24.1
Inventory (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Inventory [Line Items]    
Total inventory $ 11,090,413 $ 10,278,829
Less current portion 6,044,642 5,727,842
Inventory (non-current) 5,045,771 4,550,987
Spare parts stock [Member]    
Inventory [Line Items]    
Total inventory 7,747,455 6,514,333
Raw Materials [Member]    
Inventory [Line Items]    
Total inventory 3,135,357 3,481,486
Consumables stock [Member]    
Inventory [Line Items]    
Total inventory 166,935 246,355
Water stock [Member]    
Inventory [Line Items]    
Total inventory $ 40,666 $ 36,655
XML 76 R59.htm IDEA: XBRL DOCUMENT v3.24.1
Contracts in progress (Details) - USD ($)
12 Months Ended
Dec. 31, 2025
Dec. 31, 2024
Dec. 31, 2023
Dec. 31, 2022
Contract With Customer, In Progress, Revenue Recognized And Amounts Billed, Disclosure [Line Items]        
Revenues recognized to date on contracts in process     $ 108,952,682 $ 25,469,014
Amounts billed to date on contracts in process     (101,724,459) (33,407,182)
Retainage     8,087,823 2,047,969
Net contract asset (liability)     15,316,046 (5,890,199)
Net Income (Loss)     29,585,391 5,856,294
Income from operations     $ 37,167,627 $ 9,272,185
Increase in diluted earnings     $ 1.93 $ 0.54
Increase in basic earnings     $ 1.95 $ 0.54
Balance Sheet location        
Contract assets     $ 21,553,057 $ 2,913,722
Contract liabilities     (6,237,011) $ (8,803,921)
Change in Accounting Method Accounted for as Change in Estimate [Member]        
Contract With Customer, In Progress, Revenue Recognized And Amounts Billed, Disclosure [Line Items]        
Net Income (Loss)     1,750,750  
Income from operations     $ 2,356,439  
Increase in diluted earnings     $ 0.11  
Increase in basic earnings     $ 0.11  
Contracts in progress        
Contract With Customer, In Progress, Revenue Recognized And Amounts Billed, Disclosure [Line Items]        
Revenues recognized to date on contracts in process     $ 162,200,000  
Contract with Customer, Liability, Revenue Recognized     $ 8,700,000  
Contracts in progress | Forecast [Member]        
Contract With Customer, In Progress, Revenue Recognized And Amounts Billed, Disclosure [Line Items]        
Revenues recognized to date on contracts in process $ 140,000,000 $ 22,200,000    
XML 77 R60.htm IDEA: XBRL DOCUMENT v3.24.1
Property, plant and equipment and construction in progress (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Property, Plant and Equipment [Line Items]    
Property, Plant and Equipment, Gross $ 145,171,425 $ 139,782,227
Less accumulated depreciation 89,288,904 87,252,682
Property, Plant and Equipment, Net, Total 55,882,521 52,529,545
Construction in progress 495,471 3,705,681
Land [Member]    
Property, Plant and Equipment [Line Items]    
Property, Plant and Equipment, Gross 6,488,400 6,488,400
Building [Member]    
Property, Plant and Equipment [Line Items]    
Property, Plant and Equipment, Gross 26,044,551 23,280,880
Plant And Equipment [Member]    
Property, Plant and Equipment [Line Items]    
Property, Plant and Equipment, Gross 66,000,977 64,532,994
Distribution Systems [Member]    
Property, Plant and Equipment [Line Items]    
Property, Plant and Equipment, Gross 39,546,175 39,544,395
Office furniture, fixtures and equipment [Member]    
Property, Plant and Equipment [Line Items]    
Property, Plant and Equipment, Gross 3,338,760 3,109,546
Vehicles [Member]    
Property, Plant and Equipment [Line Items]    
Property, Plant and Equipment, Gross 3,433,561 2,525,576
Leasehold Improvements [Member]    
Property, Plant and Equipment [Line Items]    
Property, Plant and Equipment, Gross 306,545 287,980
Lab equipment [Member]    
Property, Plant and Equipment [Line Items]    
Property, Plant and Equipment, Gross $ 12,456 $ 12,456
XML 78 R61.htm IDEA: XBRL DOCUMENT v3.24.1
Property, plant and equipment and construction in progress - Additional Information (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Property, plant and equipment and construction in progress    
Capital Commitments $ 455,000,000,000  
Construction In Progress Placed In Service 7,093,158 $ 297,723
Depreciation $ 5,823,008 $ 5,425,177
XML 79 R62.htm IDEA: XBRL DOCUMENT v3.24.1
Discontinued operations - Mexico project development- Narratives (Details)
gal in Millions
1 Months Ended 12 Months Ended
Feb. 09, 2022
USD ($)
Feb. 09, 2022
MXN ($)
Aug. 28, 2020
USD ($)
Aug. 28, 2020
MXN ($)
Jun. 29, 2020
Aug. 22, 2016
gal
May 31, 2010
gal
Dec. 31, 2022
USD ($)
Dec. 31, 2012
USD ($)
ha
Jul. 28, 2023
MXN ($)
Feb. 28, 2018
Aug. 31, 2016
May 31, 2013
Schedule of Investments [Line Items]                          
Number of days to submit list of non-recoverable expenses made         20 days                
Amount of non-recoverable expenses     $ 51,144,525 $ 137,333,114                  
Litigation Settlement, Expense   $ 137,000,000                      
Impairment loss for Mexico assets - discontinued operations               $ 377,326          
Minimum [Member]                          
Schedule of Investments [Line Items]                          
Loss Contingency, Damages Sought, Value $ 51,000,000                        
NSC Agua [Member]                          
Schedule of Investments [Line Items]                          
Amount of bond posted                   $ 1,500,000      
Area of Land | ha                 20.1        
Payments for land and rights of way held for development                 $ 21,100,000        
Option agreement [Member] | NSC Agua [Member]                          
Schedule of Investments [Line Items]                          
Total Percentage Of Ownership Interest In An Acquired Company                         99.99%
NSC Agua [Member]                          
Schedule of Investments [Line Items]                          
Noncontrolling Interest, Ownership Percentage by Noncontrolling Owners                     0.40%    
Seawater Reverse Osmosis Desalination Plant Per Day Processing Capacity | gal           100 100            
Period in which construction must be completed           36 months              
Period Required To Operate And Maintain Plant And Aqueduct           37 years              
NSC Agua [Member] | Aguas de Rosarito S.A.P.I. de C.V [Member]                          
Schedule of Investments [Line Items]                          
Equity Method Investment, Ownership Percentage                       99.60%  
NSC Agua [Member] | First Phase [Member]                          
Schedule of Investments [Line Items]                          
Seawater Reverse Osmosis Desalination Plant Per Day Processing Capacity | gal           50              
NSC Agua [Member] | Second Phase [Member]                          
Schedule of Investments [Line Items]                          
Seawater Reverse Osmosis Desalination Plant Per Day Processing Capacity | gal           50              
XML 80 R63.htm IDEA: XBRL DOCUMENT v3.24.1
Discontinued operations - Mexico project development (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]    
Total assets of discontinued operations $ 21,340,805 $ 21,660,768
Discontinued Operations. | Mexico Project Development    
Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]    
Cash 91,283 442,252
Accounts receivable   12,675
Prepaid expenses and other current assets 120,234 76,553
Land 21,126,898 21,126,898
Other assets 2,390 2,390
Total assets of discontinued operations 21,340,805 21,660,768
Total liabilities of discontinued operations $ 364,665 $ 389,884
XML 81 R64.htm IDEA: XBRL DOCUMENT v3.24.1
Discontinued operations - Mexico project development - Financial Information (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]    
Loss from discontinued operations $ 1,086,744 $ 2,371,049
Discontinued Operations. | Mexico Project Development    
Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]    
Loss from operations $ (1,086,744) $ (2,371,049)
XML 82 R65.htm IDEA: XBRL DOCUMENT v3.24.1
Intangible assets - Costs and accumulated amortization (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Cost    
Finite-Lived Intangible Assets, Gross $ 6,008,390 $ 4,900,000
Accumulated amortization    
Finite-Lived Intangible Assets, Accumulated Amortization (2,655,205) (2,081,112)
Intangible assets, net 3,353,185 2,818,888
Trade name    
Cost    
Finite-Lived Intangible Assets, Gross 3,096,900 2,700,000
Accumulated amortization    
Finite-Lived Intangible Assets, Accumulated Amortization (1,106,615) (920,000)
Non-compete agreement    
Cost    
Finite-Lived Intangible Assets, Gross 268,590  
Accumulated amortization    
Finite-Lived Intangible Assets, Accumulated Amortization (13,430)  
Customer relationships    
Cost    
Finite-Lived Intangible Assets, Gross 442,900  
Accumulated amortization    
Finite-Lived Intangible Assets, Accumulated Amortization (7,382)  
Facility management contracts    
Cost    
Finite-Lived Intangible Assets, Gross 2,200,000 2,200,000
Accumulated amortization    
Finite-Lived Intangible Assets, Accumulated Amortization $ (1,527,778) $ (1,161,112)
XML 83 R66.htm IDEA: XBRL DOCUMENT v3.24.1
Intangible assets - Amortization of intangible assets (Details)
Dec. 31, 2023
USD ($)
Intangible assets  
2024 $ 656,371
2025 595,260
2026 289,705
2027 289,705
2028 276,275
Thereafter 1,245,869
Finite Lived Intangible Assets Net $ 3,353,185
XML 84 R67.htm IDEA: XBRL DOCUMENT v3.24.1
Intangible assets (Details) - USD ($)
1 Months Ended 12 Months Ended
Oct. 31, 2023
Oct. 31, 2019
Feb. 29, 2016
Dec. 31, 2023
Dec. 31, 2022
Jan. 31, 2023
Jan. 04, 2023
Finite-Lived Intangible Assets [Line Items]              
Amortization of Intangible Assets       $ 574,093 $ 582,778    
PERC Water Corporation              
Finite-Lived Intangible Assets [Line Items]              
Business Acquisition, Percentage of Voting Interests Acquired           39.00% 39.00%
PERC Water Corporation | Customer relationships              
Finite-Lived Intangible Assets [Line Items]              
Acquired Finite-lived Intangible Assets, Weighted Average Useful Life   6 years          
Ramey Environmental Compliance, Inc.              
Finite-Lived Intangible Assets [Line Items]              
Fair value of certain intangible assets $ 1,108,390            
Ramey Environmental Compliance, Inc. | Non-compete agreement              
Finite-Lived Intangible Assets [Line Items]              
Acquired Finite-lived Intangible Assets, Weighted Average Useful Life 5 years            
Ramey Environmental Compliance, Inc. | Customer relationships              
Finite-Lived Intangible Assets [Line Items]              
Acquired Finite-lived Intangible Assets, Weighted Average Useful Life 15 years            
Trade name              
Finite-Lived Intangible Assets [Line Items]              
Acquired Finite-lived Intangible Assets, Weighted Average Useful Life     15 years        
Trade name | Ramey Environmental Compliance, Inc.              
Finite-Lived Intangible Assets [Line Items]              
Acquired Finite-lived Intangible Assets, Weighted Average Useful Life 15 years            
XML 85 R68.htm IDEA: XBRL DOCUMENT v3.24.1
Leases - Lease assets and liabilities (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Current    
Current assets of discontinued operations   $ 7,979
Noncurrent    
Operating lease right-of-use assets $ 2,135,446 2,058,384
Total lease right-of-use assets 2,245,987 2,101,987
Current    
Current maturities of operating leases 456,865 546,851
Current liabilities of discontinued operations   7,361
Noncurrent    
Noncurrent operating leases 1,827,302 1,590,542
Total lease liabilities $ 2,284,167 $ 2,144,754
Operating leases, weighted average remaining lease term 6 years 1 month 6 days 6 years 7 months 6 days
Operating leases, weighted average discount rate 5.67% 5.11%
Discontinued Operations.    
Noncurrent    
Operating leases, weighted average remaining lease term 0 years 9 months 18 days
Operating leases, weighted average discount rate 0.00% 4.96%
Prepaid Expenses and Other Current Assets [Member]    
Current    
Operating lease assets, current $ 110,541 $ 35,624
XML 86 R69.htm IDEA: XBRL DOCUMENT v3.24.1
Leases - Components of lease cost (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Leases    
Operating lease costs $ 751,261 $ 692,404
Short-term lease costs 217,640 100,975
Lease costs - discontinued operations 45,979 40,021
Total lease costs $ 1,014,880 $ 833,400
XML 87 R70.htm IDEA: XBRL DOCUMENT v3.24.1
Leases - Supplemental cash flow information (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Leases    
Operating cash outflows for operating leases $ 760,847 $ 742,696
Operating cash flows from operating leases - discontinued operations $ 11,337 $ 9,590
XML 88 R71.htm IDEA: XBRL DOCUMENT v3.24.1
Leases - Future lease payments (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Leases    
2023 $ 580,780  
2024 462,990  
2025 379,019  
2026 336,597  
2027 341,687  
Thereafter 639,928  
Total future lease payments 2,741,001  
Less: imputed interest (456,834)  
Total lease obligations 2,284,167  
Less: current obligations (456,865) $ (546,851)
Noncurrent lease obligations $ 1,827,302 $ 1,590,542
XML 89 R72.htm IDEA: XBRL DOCUMENT v3.24.1
Income taxes - Components of income before income taxes (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Income taxes    
Foreign (not subject to income taxes) $ 10,002,233 $ 6,958,583
Mexico (742,367) (987,279)
United States 27,649,330 1,394,642
Income before income taxes 36,909,196 7,365,946
Less discontinued operations 1,086,744 2,371,049
Income before income taxes $ 37,995,940 $ 9,736,995
XML 90 R73.htm IDEA: XBRL DOCUMENT v3.24.1
Income taxes - Provision for income taxes (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Current:    
Federal $ 5,611,360 $ 430,116
State 1,663,653 (29,157)
Total 7,275,013 400,959
Deferred:    
Federal (276,070) (184,469)
State (248,929) 180,249
Total (524,999) (4,220)
Total provision (benefit) $ 6,750,014 $ 396,739
XML 91 R74.htm IDEA: XBRL DOCUMENT v3.24.1
Income taxes - Reconciliation of federal tax rate to the effective rate (Details)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Income taxes    
U.S. statutory federal rate 21.00% 21.00%
State taxes, net of federal effect 2.88% 8.88%
Nontaxable foreign income 5.71% 25.57%
Research & Development Tax Credit   (1.92%)
Permanent items (0.32%) (0.70%)
Valuation allowance for deferred tax assets (0.08%) 2.38%
Total U.S. statutory federal tax rate to the effective rate 17.77% 4.07%
XML 92 R75.htm IDEA: XBRL DOCUMENT v3.24.1
Income taxes - Net long-term deferred tax liability (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Deferred tax assets:    
Research & development tax credits $ 0 $ 58,069
Loss carry forward 130,911 443,076
Accrued compensation 146,057 82,503
Operating lease liabilities 501,397 412,840
Capitalized research expenditures 326,178 0
Other 29,094 0
Valuation allowances 0 (29,036)
Deferred tax assets 1,133,637 967,452
Deferred tax liabilities:    
Property and equipment 325,473 293,195
Intangible assets 847,450 821,723
Operating lease right-of-use assets 491,494 412,840
Deferred Tax Liabilities, Gross 1,664,417 1,527,758
Net deferred tax liability 530,780 560,306
Discontinued Operations.    
Deferred tax assets:    
Operating loss carryforwards - Mexico 5,844,847 5,378,177
Valuation allowances (15,678,994) (11,816,716)
Land basis difference - Mexico 2,818,663 2,163,681
Start-up costs - Mexico 7,015,484 4,274,858
Deferred tax assets $ 0 $ 0
XML 93 R76.htm IDEA: XBRL DOCUMENT v3.24.1
Income taxes - Additional Information (Details)
$ in Millions
Dec. 31, 2023
USD ($)
Discontinued Operations.  
Operating Loss Carryforwards $ 19.5
Domestic Tax Authority [Member]  
Operating Loss Carryforwards 0.6
State and Local Jurisdiction [Member]  
Operating Loss Carryforwards $ 0.3
XML 94 R77.htm IDEA: XBRL DOCUMENT v3.24.1
Earnings per share (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Earnings per share    
Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders $ 30,672,135 $ 8,227,343
Less: preferred stock dividends (15,513) (11,532)
Net income from continuing operations available to common shares in the determination of basic earnings per common share 30,656,622 8,215,811
Total loss from discontinued operations (1,086,744) (2,371,049)
Net income available to common shares in the determination of basic earnings per common share $ 29,569,878 $ 5,844,762
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) 15,739,056 15,290,509
Weighted average number of preferred shares outstanding during the period (in shares) 39,885 31,885
Potential dilutive effect of unexercised options and unvested stock grants 86,956 79,259
Weighted average number of shares used for determining diluted earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders 15,865,897 15,401,653
XML 95 R78.htm IDEA: XBRL DOCUMENT v3.24.1
Dividends (Details) - $ / shares
3 Months Ended 12 Months Ended
Dec. 31, 2022
Sep. 30, 2022
Jun. 30, 2022
Mar. 31, 2022
Dec. 31, 2021
Sep. 30, 2021
Jun. 30, 2021
Mar. 31, 2021
Dec. 31, 2023
Dec. 31, 2022
Dividends.                    
Dividends Per Share Declared $ 0.095 $ 0.095 $ 0.085 $ 0.085 $ 0.085 $ 0.085 $ 0.085 $ 0.085 $ 0.36 $ 0.34
XML 96 R79.htm IDEA: XBRL DOCUMENT v3.24.1
Segment information (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Segment Reporting Information [Line Items]    
Revenue $ 180,211,233 $ 94,104,972
Cost of revenue 118,284,128 63,749,849
Gross profit 61,927,105 30,355,123
General and administrative expenses 24,752,366 21,070,234
Gain (loss) on asset dispositions and impairments, net (7,112) (12,704)
Income from operations 37,167,627 9,272,185
Other income, net 828,313 464,810
Income before income taxes 37,995,940 9,736,995
Benefit for income taxes 6,750,014 396,739
Net income from continuing operations 31,245,926 9,340,256
Income from continuing operations attributable to non-controlling interests 573,791 1,112,913
Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders 30,672,135 8,227,343
Total loss from discontinued operations (1,086,744) (2,371,049)
Net income attributable to Consolidated Water Co. Ltd. stockholders 29,585,391 5,856,294
Accounts receivable, net 38,226,891 27,046,182
Inventory, current and non-current 11,090,413 10,278,829
Contract assets 21,553,057 2,913,722
Property, plant and equipment, net 55,882,521 52,529,545
Construction in progress 495,471 3,705,681
Intangibles, net 3,353,185 2,818,888
Goodwill 12,861,404 10,425,013
Total segment assets 197,096,787 171,346,081
Assets of discontinued operations 21,340,805 21,660,768
Total assets 218,437,592 193,006,849
Retail [Member]    
Segment Reporting Information [Line Items]    
Revenue 30,158,051 25,954,013
Cost of revenue 13,891,229 12,548,763
Gross profit 16,266,822 13,405,250
General and administrative expenses 16,905,010 14,552,866
Gain (loss) on asset dispositions and impairments, net (22,065) (39,397)
Income from operations (660,253) (1,187,013)
Accounts receivable, net 3,425,948 2,953,927
Inventory, current and non-current 3,041,460 2,759,659
Property, plant and equipment, net 32,809,487 27,697,490
Construction in progress 380,436 3,643,889
Goodwill 1,170,511 1,170,511
Total segment assets 58,774,647 65,853,789
Bulk [Member]    
Segment Reporting Information [Line Items]    
Revenue 34,595,058 32,991,066
Cost of revenue 24,128,132 23,032,212
Gross profit 10,466,926 9,958,854
General and administrative expenses 1,737,264 1,570,732
Gain (loss) on asset dispositions and impairments, net 12,720 5,607
Income from operations 8,742,382 8,393,729
Accounts receivable, net 26,965,126 16,554,940
Inventory, current and non-current 4,858,324 4,037,684
Property, plant and equipment, net 20,370,056 22,510,658
Goodwill 1,948,875 1,948,875
Total segment assets 63,956,725 56,118,243
Services [Member]    
Segment Reporting Information [Line Items]    
Revenue 97,966,650 28,835,428
Cost of revenue 66,797,762 22,973,634
Gross profit 31,168,888 5,861,794
General and administrative expenses 4,271,808 3,461,294
Gain (loss) on asset dispositions and impairments, net   23,717
Income from operations 26,897,080 2,424,217
Accounts receivable, net 6,802,780 5,838,721
Inventory, current and non-current 55,272  
Contract assets 17,715,872 1,249,069
Property, plant and equipment, net 1,143,884 759,409
Intangibles, net 2,692,074 2,064,444
Goodwill 7,756,807 5,320,416
Total segment assets 58,476,773 36,319,078
Manufacturing Units [Member]    
Segment Reporting Information [Line Items]    
Revenue 17,491,474 6,324,465
Cost of revenue 13,467,005 5,195,240
Gross profit 4,024,469 1,129,225
General and administrative expenses 1,838,284 1,485,342
Gain (loss) on asset dispositions and impairments, net 2,233 (2,631)
Income from operations 2,188,418 (358,748)
Accounts receivable, net 1,033,037 1,698,594
Inventory, current and non-current 3,135,357 3,481,486
Contract assets 3,837,185 1,664,653
Property, plant and equipment, net 1,559,094 1,561,988
Construction in progress 115,035 61,792
Intangibles, net 661,111 754,444
Goodwill 1,985,211 1,985,211
Total segment assets $ 15,888,642 $ 13,054,971
XML 97 R80.htm IDEA: XBRL DOCUMENT v3.24.1
Segment information - Revenues earned by major geographic region and major customer (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Segment Reporting Information [Line Items]    
Revenue $ 180,211,233 $ 94,104,972
Cayman Islands [Member]    
Segment Reporting Information [Line Items]    
Revenue 41,728,340 30,375,985
Bahamas [Member]    
Segment Reporting Information [Line Items]    
Revenue 31,221,633 29,943,615
United States [Member]    
Segment Reporting Information [Line Items]    
Revenue 106,768,621 33,338,466
Management Services Agreement With OC-BVI [Membre]    
Segment Reporting Information [Line Items]    
Revenue 492,639 446,906
Water and Sewerage Corporation [Member]    
Segment Reporting Information [Line Items]    
Revenue $ 31,221,633 $ 29,943,615
Percentage of consolidated revenues 17.00% 32.00%
One Customer [Member]    
Segment Reporting Information [Line Items]    
Revenue $ 64,149,170 $ 11,805,752
Percentage of consolidated revenues 36.00% 13.00%
XML 98 R81.htm IDEA: XBRL DOCUMENT v3.24.1
Segment information - Property, plant and equipment, net by major geographic region (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Segment Reporting Information [Line Items]    
Property, Plant and Equipment, Net $ 55,882,521 $ 52,529,545
Cayman Islands [Member]    
Segment Reporting Information [Line Items]    
Property, Plant and Equipment, Net 32,902,949 28,068,156
Bahamas [Member]    
Segment Reporting Information [Line Items]    
Property, Plant and Equipment, Net 20,039,049 22,031,690
United States [Member]    
Segment Reporting Information [Line Items]    
Property, Plant and Equipment, Net $ 2,940,523 $ 2,429,699
XML 99 R82.htm IDEA: XBRL DOCUMENT v3.24.1
Segment information - Additional Information (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Retail [Member]    
Segment Reporting Information [Line Items]    
Depreciation, Depletion and Amortization $ 2,484,845 $ 2,391,603
Bulk [Member]    
Segment Reporting Information [Line Items]    
Depreciation, Depletion and Amortization 3,032,902 2,836,794
Services [Member]    
Segment Reporting Information [Line Items]    
Depreciation, Depletion and Amortization 785,347 674,508
Manufacturing Units [Member]    
Segment Reporting Information [Line Items]    
Depreciation, Depletion and Amortization $ 273,360 $ 284,403
XML 100 R83.htm IDEA: XBRL DOCUMENT v3.24.1
Cost of revenues and general and administrative expenses - Cost of revenues (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Cost of revenues and general and administrative expenses [Line Items]    
Cost of revenue $ 118,284,128 $ 63,749,849
Subcontractor and other project costs    
Cost of revenues and general and administrative expenses [Line Items]    
Cost of revenue 64,806,072 17,847,124
Employee costs [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
Cost of revenue 18,935,014 14,036,117
Fuel oil [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
Cost of revenue 9,502,666 6,975,129
Electricity [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
Cost of revenue 9,024,836 10,203,690
Maintenance [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
Cost of revenue 5,632,998 5,261,463
Insurance [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
Cost of revenue 2,992,872 2,786,258
Retail license royalties [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
Cost of revenue 2,061,497 1,782,333
Cost of plant sales [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
Cost of revenue 1,842,924 1,590,250
Other [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
Cost of revenue $ 3,485,249 $ 3,267,485
XML 101 R84.htm IDEA: XBRL DOCUMENT v3.24.1
Cost of revenues and general and administrative expenses - General and administrative expenses (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Cost of revenues and general and administrative expenses [Line Items]    
General and Administrative Expense $ 24,752,366 $ 21,070,234
Employee costs [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
General and Administrative Expense 13,690,152 11,209,635
Insurance [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
General and Administrative Expense 2,012,092 1,760,279
Professional fees [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
General and Administrative Expense 1,903,856 2,067,625
Directors' fees and expenses [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
General and Administrative Expense 980,759 991,592
Office Rent [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
General and Administrative Expense 882,686 793,380
Amortization of intangibles [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
General and Administrative Expense 574,093 582,778
Investor Relations [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
General and Administrative Expense 534,979 354,158
Business Development Expenses [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
General and Administrative Expense 578,086 395,660
Bad Debt Expense [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
General and Administrative Expense 408,489  
Computer Supplies, Software Licenses [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
General and Administrative Expense 387,335 322,310
Bank Charges [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
General and Administrative Expense 341,263 490,237
Depreciation [Member]    
Cost of revenues and general and administrative expenses [Line Items]    
General and Administrative Expense 190,010 163,714
Other [Member].    
Cost of revenues and general and administrative expenses [Line Items]    
General and Administrative Expense $ 2,268,566 $ 1,938,866
XML 102 R85.htm IDEA: XBRL DOCUMENT v3.24.1
Stock-based compensation - Significant weighted average assumptions (Details)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Stock-based compensation    
Risk free interest rate 5.06% 1.64%
Expected option life (years) 1 year 1 year 2 months 12 days
Expected volatility 42.42% 47.15%
Expected dividend yield 1.60% 2.35%
XML 103 R86.htm IDEA: XBRL DOCUMENT v3.24.1
Stock-based compensation - Stock option activity (Details)
12 Months Ended
Dec. 31, 2023
USD ($)
$ / shares
shares
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Outstanding at the beginning of period -Options | shares 11,740
Granted - Options | shares 16,319
Exercised - Options | shares (8,231)
Forfeited/expired - Options | shares (7,653)
Outstanding at the ending of period -Options | shares 12,175
Outstanding-Weighted Average Exercise Price at the beginning of period - Options | $ / shares $ 13.59
Granted-Weighted Average Exercise Price | $ / shares 13.62
Exercised-Weighted Average Exercise Price | $ / shares 12.12
Forfeited/expired-Weighted Average Exercise Price | $ / shares 11.28
Outstanding-Weighted Average Exercise Price at the ending of period - Options | $ / shares $ 16.08
Outstanding-Weighted Average Remaining Contractual Life (Years) 2 years 3 months 14 days
Outstanding-Aggregate Intrinsic Value | $ $ 237,705
XML 104 R87.htm IDEA: XBRL DOCUMENT v3.24.1
Stock-based compensation - Weighted average fair value of options at the date of grant and the intrinsic value of options exercised (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value $ 104,559 $ 17,158
Below Market Price [Member]    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value $ 12.21 $ 5.58
Below Market Price [Member] | Employees [Member] | Preferred stock [Member]    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value 12.21 5.58
At Market Price [Member]    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value 8.29 4.32
At Market Price [Member] | Management Employees [Member]    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value 0 0
At Market Price [Member] | Employees [Member] | Common stock [Member]    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value 8.29 4.32
Above Market Price [Member]    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value 0 0
Above Market Price [Member] | Management Employees [Member]    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value 0 0
Above Market Price [Member] | Employees [Member] | Preferred stock [Member]    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value $ 0 $ 0
XML 105 R88.htm IDEA: XBRL DOCUMENT v3.24.1
Stock-based compensation (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
May 14, 2008
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Cumulative financial performance targets measurement period   3 years  
Number of stock grant rights issued 16,319    
Allocated Share-based Compensation Expense, Net of Tax $ 703,289 $ 386,260  
Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Number of Shares 12,175    
Share-based Compensation Arrangement by Share-based Payment Award, Option, Nonvested, Weighted Average Exercise Price $ 16.08    
Share Based Compensation Arrangement By Share Based Payment Award Options Non Vested Outstanding Weighted Average Remaining Contractual Term 2 years 3 months 14 days    
Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition 2 years 3 months 14 days    
Preferred stock value $ 26,578 20,630  
Number of days employee option to purchase preferred stock must be exercised 30 days    
Share-based Compensation $ 1,933,666 $ 1,417,172  
Closing Price of Common Shares $ 35.60    
Non Executive Directors Share Plan [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Number of stock grant rights issued   30,767  
Share-based Compensation $ 341,394 $ 369,678  
Non-Performance-Based Grants [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period 3 years    
Cumulative financial performance targets measurement period 3 years    
Number of stock grant rights issued 29,508 32,265  
Number of vested shares issued $ 25,986 $ 23,411  
Allocated Share-based Compensation Expense $ 366,058    
Performance-Based Grants [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Cumulative financial performance targets measurement period 3 years 3 years  
Number of stock grant rights issued 26,742 13,797  
Share-based Compensation $ 522,925 $ 335,964  
Employee Stock Option [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized $ 14,867    
Employee Stock Option [Member] | Common Stock Options [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Number of stock grant rights issued 3,010 3,665  
Equity Incentive Plan2008 [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Common Stock, Capital Shares Reserved for Future Issuance     1,500,000
Redeemable preferred stock [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Additional consecutive individual requisite service period required for eligibility in Employee Share Incentive Plan 4 years    
Number of preferred shares converted to common shares dependent upon specific criteria 1    
Number of common shares received upon conversion of preferred shares dependent upon specific criteria 1    
Number of average trading price of the common stock 7 days    
Stock Issued During Period, Shares, Issued for Services 13,309 9,295  
Redeemable preferred stock [Member] | Non Executive Directors Share Plan [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Number of stock grant rights issued 22,831    
XML 106 R89.htm IDEA: XBRL DOCUMENT v3.24.1
Retirement benefits (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Defined contribution plan    
Defined Benefit Plan Disclosure [Line Items]    
Defined Contribution Plan, Cost $ 771,616 $ 624,798
XML 107 R90.htm IDEA: XBRL DOCUMENT v3.24.1
Financial instruments - Additional Information (Details)
12 Months Ended
Dec. 31, 2023
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]  
Number of days after consumption billings are considered past due 45 days
Minimum [Member]  
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]  
Duration certain foreign currencies are fixed to the dollar 20 years
XML 108 R91.htm IDEA: XBRL DOCUMENT v3.24.1
Commitments and contingencies (Details) - USD ($)
$ in Millions
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Contingencies    
Employment Agreement Base Annual Salaries $ 5.5  
Cayman Water Retail Operations, Percentage Of Revenue 17.00% 27.00%
Cayman Water Retail Operations, Percentage Of Gross Profit 26.00% 44.00%
Long-term Purchase Commitment, Amount $ 16.6  
Consolidated Water Bahamas [Member]    
Contingencies    
Percentage of delinquent account receivables 80.00% 65.00%
WSC [Member]    
Contingencies    
Accounts Receivable, Net $ 26.9 $ 16.3
XML 109 R92.htm IDEA: XBRL DOCUMENT v3.24.1
Related party transactions (Details) - USD ($)
12 Months Ended
Dec. 31, 2022
Dec. 31, 2023
Jan. 31, 2023
Jan. 04, 2023
Related Party Transaction [Line Items]        
Accounts payable outstanding $ 403,839 $ 0    
PERC Water Corporation        
Related Party Transaction [Line Items]        
Purchases of services 2,695,000      
Accounts payable outstanding 404,000      
Amount of expense related to sublease agreement $ 97,000      
PERC Water Corporation        
Related Party Transaction [Line Items]        
Ownership interest acquired     39.00% 39.00%
PERC Water Corporation        
Related Party Transaction [Line Items]        
Ownership interest held     100.00% 100.00%
XML 110 R93.htm IDEA: XBRL DOCUMENT v3.24.1
Supplemental disclosure of cash flow information (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Supplemental Disclosure Of Cash Flow Information [Line Items]    
Interest paid in cash $ 21,417 $ 14,797
Income taxes paid in cash 4,920,912 211,000
Non-cash transactions:    
Dividends declared but not paid 1,502,506 1,305,367
Issuance of 368,383 and 0, respectively, shares of common stock for the purchase of non-controlling interests in PERC 5,359,973 0
Transfers from inventory to property, plant and equipment and construction in progress 317,853 346,024
Transfers from construction in progress to property, plant and equipment 7,093,158 297,723
Right-of-use assets obtained in exchange for new operating lease liabilities 745,078 0
Purchase of equipment through issuance of long-term debt 0 188,645
Redeemable preferred stock [Member]    
Non-cash transactions:    
Issuance of 13,309 and 9,295, respectively, shares of redeemable preferred stock for services rendered 323,275 133,197
Conversion (on a one-to-one basis) of 8,848 and 6,585, respectively, shares of redeemable preferred stock to common stock 5,309 3,951
Issuance of shares, respectively, shares of common stock for services rendered $ 13,309 $ 9,295
Conversion (on a one-to-one basis) of 8,848 and 6,585, respectively, shares of redeemable preferred stock to common stock 8,848 6,585
Common stock [Member]    
Non-cash transactions:    
Issuance of 68,864 and 72,597, respectively, shares of common stock for services rendered $ 1,015,177 $ 877,298
Issuance of shares, respectively, shares of common stock for services rendered $ 68,864 $ 72,597
XML 111 R94.htm IDEA: XBRL DOCUMENT v3.24.1
Supplemental disclosure of cash flow information - Additional Information (Details) - shares
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Redeemable preferred stock [Member]    
Supplemental Disclosure Of Cash Flow Information [Line Items]    
Stock Issued During Period, Shares, Issued for Services 13,309 9,295
XML 112 R95.htm IDEA: XBRL DOCUMENT v3.24.1
Pay vs Performance Disclosure - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Pay vs Performance Disclosure    
Net Income (Loss) $ 29,585,391 $ 5,856,294
XML 113 R96.htm IDEA: XBRL DOCUMENT v3.24.1
Insider Trading Arrangements
12 Months Ended
Dec. 31, 2023
Trading Arrangements, by Individual  
Rule 10b5-1 Arrangement Adopted false
Non-Rule 10b5-1 Arrangement Adopted false
Rule 10b5-1 Arrangement Terminated false
Non-Rule 10b5-1 Arrangement Terminated false
EXCEL 114 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( (^&>U@'04UB@0 +$ 0 9&]C4')O<',O87!P+GAM M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGDK7A.YNJQ<&4GPZ4A!0W_J=0U[R;UEA_6\#MI7E!+ P04 M " "/AGM8N&ULS9++ M:L,P$$5_I6AOCRSW <+Q)J&K%@H-M'0GI$DB8CV0IMCY^]INXE#:#^A2,U=G MSL T.DH=$KZD$#&1Q7PSN,YGJ>.*'8BB!,CZ@$[EFC MVB,(SN_!(2FC2,$$+.)"9&UCM-0)%85TQAN]X.-GZF:8T8 =.O24H2HK8.TT M,9Z&KH$K8((1)I>_"V@6XES]$SMW@)V30[9+JN_[LJ_GW+A#!>_/3Z_SNH7U MF937./[*5M(IXHI=)K_5Z\WVD;6"B]N"UX5XV HN[X2L^,?D^L/O*NR"L3O[ MCXTO@FT#O^ZB_0)02P,$% @ CX9[6)E&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M M3A^%$5B-;'EDD81_OTV23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R M> +]O6N[!3+ MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,! M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2 MBW A(5M>5 TR M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$ MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7K;YH] M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZKR2.FJW"$2M"/F(9 M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+ MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+ M.7\N?<^E[[GT/:'2MSAD6R4)RU3393>* M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.WF)&Y M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_# M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0 MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYNTB42%(JP# 4A M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.' MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_ M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]! MU4#E/]O4#6CV#30,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04 M" "/AGM885KMI\B**\#_"SZ7X>&FZVC']+UY0*]!Y'27K;60NQ^=3KI?Z: MQB2]9!N:R&^6C,=$R$6^ZJ4;3DE0%,51#UO6H!>3,.G3+=^K1 M*,J5Y'[\M1/M'+:9%QZ_WZM/BH.7!_-&4NJQZ#4,Q/JV,^R@@"Y)%HD7MOV- M[@ZHG^OY+$J+_VA;KMMW.LC/4L'B7;'<@SA,RE?RO@-Q5.#:-05X5X!_*+#= MF@)G5^ T+7!W!6Y!ICR4@L.8"')WP]D6\7QMJ9:_*6 6U?+PPR3_W>>"RV]# M62?NQLS/Y,\H$$D"])"(4'R@:5*VI_QWZ:+?YV/T\]]^N>D)N;F\J.?OI.]+ M:5PC;6/TA25BG4K=@ 95@9[7?R'\ M4I86Y:ZF? R7_S-+Y-8MW=8K1^,17Q*-\2GMQW9 M!Z24?Z>=N[__9 ^L?^A@F10;&Q*K@'0/(%U(78%-"!PK6$3S3X?7 JK:@#(E50 T.H ;-0,TH M#UE^4@9(]JK:-G5":=]3U7958'U;:(;$*M"N#M"N&IY]G$@[4(P:]2T,UEJ2 M*-4V,;"L+2U#8A5:PP.M(7B$NWY^$D84/67Q&^4Z2K"&U<5][ YUG,#"MIP, MB54X71\X73?A]$)782IDPQ+HB<3:$Q'6\9Z?YL^/T_%H\3!&K_+_"_*>+\O= M?%R,+W400<6V$ V)52#:EG)W5A.,T\1G7)Z2A;&X0',A.S7$./)8E@C^(5\# M+=L3ZI^_ZO#!16WYF5*K CRRQW83@ ORCJ:![.7"9>B7SKC^[#TA>3WL6@/[ M>M#'6GI@<6MZAM2J]+"BAYO0&P6!5$\O]F_0HUP//2?Z-@=+RAZ!"$'0\U+^ M$A3-"/^FQ0BJM,9H2*V*404%&[3/,,;%EFDQPI*O81)L"0_08LTIO4"N6*-) MQ!B_0*\T%>B>R,Z7D4#+UFAR,*569:NR@PV[?YAM#D=+%Q:=7>['F'OVCFS; MUL5-#Q9IS?$<$<-6&<.&P\&/'+U\20XQ"[;51MD3O=M>V+?T(8S1ZF%*KHE/APX83 MP_\TN]+1:)'!2C5FQFCR,*56A:6RAPT'A^*<''%*ZIL5+."X?2TDH['#E%H5 MD@H>-IP8'IDOS[W9FB500CLA MWOTU25:T-MZ>$'H:S<>C?VEY&0T2IM2JO%20P+#K7W 2A,D*S3_B-Q9I.<$" MWJOWK*5D-">84JM24CD!-\H)?[!(#H*$EY>9>*K%!2L]Z3*%!Q>UAG4.XX^5 M\<>-C/\KC:+NMT2Z5-EYD53V^@&:IFFF[_9/:-9@,^KS3:E5L2F?CQOY?"_C M/+_H6U[I+4Y-042F;VNPXE>JJ_+@JM;4SN'PL7+XN)'#GR:"\G*J.Y]8('N, M6FJP8ATUH^;>E%J5FC+WN)&Y+WHQF04%73&]M3^A\\22+O%]*F6D2% *:ND9 M=?NFU*KTE-O'C:8:YC&)(G2?I?+K5']^PCIUTWYP66M8YW#]6+E^W&B^X2&F M?)7W9K]*!;&6.2G>D$3?YF#!VJDLN*XUMG/8?T?9?P*SQXX+^889!=7WN3SGTE$5G]J;VR -U,+$ZYK?1/#.4*!HT*! WOYJ3=Y M0:,L"(7$-A*"IJ*<:LBQ::G!>O74C$8#4VI5:BH:.+"SWP.K"U GRK\0+ILP M>GR<:4D9C0>FU*JDCNXW@DW]GM0DY#&:CK6P8(7!4#OK#%>UIG2.7."H7.# M'GY/*;\.5'L?%BQ1S*#,2!2C>TK\]44^L\+#@&C9&0T'IM2J[%0X'%K:'5S>][Q5BY\@#CLH#3J,\X$ESP:73F"8!?4>?J;Z) MP5*6_+O&0\>UM$2,Y@!3:E5J*@'@G6TGY+I=&W<= M6XO-:"(PI5;%IA*! QOX(VNKN$WDA]H,=4*L[BY N*PUL7.$ 5>% ;=Q&"B( M[>ZBK&5V0FZBG9"#BUK?EGL.Q^\JQ^_"#GTD<04ELAJ+?T*@=J2$ZUIC.H?% M=Y7%=QO=1C3+WJ+0S\T4T5XQ@U7:CHI&U<8[M<'1&.L,+/?:'O8'AT&VQ-,[ M>IHCOQQ1/!63(C^?V2X?[#A\>GCR9E0\;])3JY>/[UA&_(H2G@@ .0G 8 >&PO=V]R:W-H965T&ULM9IM3^-($L>_2BNWN@<)2#_;G@4D"+.W(['#:)C=?7&Z%R9IB#6..VMW M8.8^_57;P4[<#X$5RPM(0G7EWY7J^E4Y/GW2]==FJ91!WU9EU9Q-EL:LWTVG MS7RI5GESHM>J@O_S"9D\O_"Y>%@:^\+T_'2=/ZA;97Y=?ZKAV;3W MLBA6JFH*7:%:W9]-+LB[FFIW'R&[E3NNO]LF'Q=D$6T6J5'-C M7>3PYU'-5%E:3Z#CCZW32?^>=N'NXV?O/[6;A\WMK:X@F:;QJC5]O%H&!55-W?_-LV$#L+" \L MH-L%]*4+V'8!:S?:*6NW=96;_/RTUD^HMM;@S3YH8].NAMT4E?T8;TT-_RU@ MG3F?W7R\O;G^<'7QY?T5NKRXOO@X>X]N?W[__LLM.D:_WEZA?_[PK].I@;>R M"Z;SK=O+SBT-N+U2\Q/$R!&BF#+/\MG+E]/]Y5/88+]+VN^2MOY8:)>;NE:5 M07G3*-/XMM.MY_[U]BR]:];Y7)U-X+ TJGY4D_.__XU(_*-O=*]FZL@?^\9Q324F:I:?3Q]T=N88" M)X0D@O2&>VIYKY9'U5[,YWH#XJ BS!4HO2O5$:J4\8GM/(D=#2RE5*89&8EU M#6F"N20I]8L5O5@1%?NA>H1 ZOJ[3YUPWE1BSB6G(W&NG4AHDO* -MEKDU%M MGVJUSHL%4M^@P#>J:5- FZ6JH8H<2G[I:.)82);@D7;73DC.:)+YM2>]]B2> MLKHR-=3SB,+$_4B)$ R+9"318Y@1EM! >-->8AJ7N!=#I._1HFCFH+NH-@H" MO59U;K'D%9]ZQ!-!QM)=,\$(3[%?>=8KSZ+*OVB3ER_(@88%W8.MT+G$A3*NBX M,/@LP2P37 2D[V"4',KAQM2;KC:U=H8FP$V MKC>SX\O?/GBE,C>#.8$R,6:9SQ R@+/ 22,#S$B<9O_6>O%4E*57GDLE0E-) M..9C?1Y+#,<+$Q80. ",'"*8R:N' BB[K03A0^5RBC&H1^FX&G@,:4I2^ F( M'8A&XDB[Z8IJ]8!*!8TZJFU'?JSOCS>-BA0RXE**$B: Q6/E'D,L4I;R@/*! M9R0.M)N6NQ&)+J48QTF6L+%$UY!(F;$D=*H&GI$XT*YU]7!L5+WZ!K*1EZ M$F:75-#;6J)EXZ[,8THR!J-PR@/-#1VH1O&+AH^R MR.^*LC"%\D\@43:^>@1Y(V_[>QYP2.,X[/OZ=?Z]:^KS^;RV>15I4 \%R,4A M <&P;\$GC^+S8QGVN5S;P[9'V:G2IR""ZF#E*74.8PA(HG &I SYI')]7Q6.Q M4-6BCZY7IX>.,$%),0:3SQ"./D0UH'.@*(U3]/E KW*SJ=MTM=53[^/*GP@N M+#GT<]+1[ID2N4Q#TS8=F$KC3'V6OM9UVZF"[K(GP4+=>7L!ZH*29!2S<>/B MLR,\DP&>TH&G](4#XJ$*X>)24FB9R;A;]1BF*689#05XX"J-<_5*W2L(\0+* M K38&W\*NTAD!%2.!T*OG8#!)B!R ">-@]-#I%?RG[J\9))+-Y$]=FF6AEHL M-D"5Q4?%_;'V0%XP=^ZC+,-<.CVASQ)JBQ1I(.AL0"*+(_%Z[YP=&KR8!W89 M(=FX&GOL*)&$!!I$-I".Q4G7)[+)OQV,KV=*9#A)';$>.PF$"5PX8#O7/..0 M^]C'\D5EF'DFP)0F#(_;0I^AR+ (7:UC ^M8G'7=B' HKC[605?JQ-5SQ=-F M2V"@90/I6)QTW2D[I-(S 4J)94:2T&YM0XH'<#&#H!-KU9%>Y6@ZRR[ M0O:@JGE(==2?OT%&OD[[#1SM[WG (DOB@P449UT6B[;]_!U^UVBF3]"U69R@ MQNCYUZ4N%ZIN_M%>1#/>R]8L2M[73AUOY6T_( -\61R^G]5"J57;EX/_;?UJ M(W&$?L G$MLF'3WFY4:=H(N-6>JZ^!^84(R/X%2A9IF#K!]1T306@>V$LC&- M@0>VH'!^1+.D?9GQ(VC.MPN. /;-6K5?2);^*'N&8"D2YWQXS+ ,79=B ^]9 MG/<7BT5A40YGV7Y)<%Q4:)ZO"SC;7K&^"[SM%9UQ@^*Q3*$Q%% C U\+#7SG M<;Y_5B:'EV!>S.L*@N\]P]RE-?3(/$WIN$)Z+"6A/)%92.G =1[G>E! M&$8#Z2AV#5.[F[&7\8R->GKU!_1&WO;W/5">9W]] MQD8;B5<'Y(V\[=^M,?00(MY#O"QCMTYV[VT9=P]1DT[<=.<6+'O_VR]Y_5!4 M#0RA][ &GR20Z'5W2UGWQ.AU>U?6G39&K]J'2Y7#YV,-X/_W6IOG)_9&K_[& MOO/_ U!+ P04 " "/AGM8V"MTU3P# L#0 & 'AL+W=OR$IJ1)0VC+!XB3P,MQ!FO*[GD((-!#3!(^U$(ATB-= MYWX(,>8=FD(BK\PIB[&02[;0>:J;V>.(V6H1"G=!'@Q0O8 KB>WK#Y$HOJ@11# F/:((8 MS(?:V#R:F(Y*R")^1+#F6\=(29E1>J\6Y\%0,Q01$/"%*H'EQPHF0(BJ)#G^ M;(IJ14^5N'W\6/U;)EZ*F6$.$TI^1H$(AUI/0P',\9*(6[H^@XT@5]7S*>'9 M.UKGL5W9T5]R0>--LES'49)_XH?-C=A*D$+K$ZQ-@M4VP=XDV)G0G"R3=8(% M'@T872.FHF4U=9#=FRQ;JHD2]35.!9-7(YDG1I/KJ^GUQ?G)^.[T!!V/+\97 MDU,T/3L]O9NB@QO,(!$AB,C'Y#/Z@CXB'?%0GN4#7MVK=%8 FV7\#V]X!]V;+] M2G_3]3S3==QGH'6!MF7U/+<>U#2>)IRQ!^H.LVYJM0"NC6PDWIK)9GO;'C?: MMKG2OKY]KVIEW4\CV6R>R6^WKMEF#.\(*L,_#6*S>1+O8U^S.E5-I\:]N^/* ML$_CUVR>OVWM:U:':86QL=.^OQE]:RNKGB,N,5M$"4<$YK*\T?$D"LNWYOE" MT#3;WM+"[GT/CTFB3N!N[A?WW-TY#T\:.H2>D MXP-MW?'T>>R9><;QR9.H?LHYYPH]%WDI3P=SI1;'HY&NRV&I^(I,/\FM]TA3>1#BI_YPF9X.L$;$8W M]<3M]R_>/]?D@A*E&HN MT469\G37P0B0;N#2%[AGU.GQG$^'B)%#1#%E%D"3MT^G#CALLWJL]L?^Z^K9 MUFSMTK.[U&E[+!?)E)\.("\EKU9\,/[S#Q+@OVQ\W\G9#GMOP]YS>1]_Y2M> M+KF-XWIB4$_4E60U)A&FA% &N[;:)F!:QA[!7AS2C>$..'\#SG>"FPBID)A! MJ:E!HH.LG.;+-"L?82A/%$_1(JG4;\2?H21*KFT_8)24*?I #X/8.XP(1EE9 M1UH]K&/&F@1K(/XV61+1R",TZI U+0,6>G'DQ7:RP89LX"3[=R6D1(M*S#)E M0QB8OTMB&A+L=P":A@PSWR>4V0&&&X"A&R O>97D]3HF*=2Q3*HJT17\9?WE M7CL4!XW7=Y;*DY>V2/%P:]JJ%OY$K,(Q(&'NS7*8N=Y(8F" MGKVA+4;Z-HS-MEA!4DL(>SX4TRY*BZ$7^%Y?!+6*3IR2.;ZMB^B1G">5KD39 M5O#?3([.OE]:83-SS0(_[%97BQD-&.W#W.HP<0OQQ:]E!G42JB&$/^))50)T MJ>NE [)GJA9EQ._JL\4N]&.,>S"W\DS<^OQ2%!=+-9HF>0ZEI;>NN%WMG:JF M"D.9C' OIU:%B5N&Z^IC)6#J*BB+%Y#N8IMV41Q[/06.)Q.^4OFJ>29VX/"5#L6QK$?>[@+ MV+2,0Q: ;0_B5AF)6QJA6*RR^D0+D%]';,I>$/H8$Z.X680T#D+6TR725AZI M4X;&UUSM5+0IG,ZR_:"MQM'7-.X5 MX"A1JLH>EBIYR&$;!"I%>:0M*Y'GZV*^5B [15/W_! BJINC%CL"K5A,>EID MV@HD=0ODFW;'(#F!09%G:=TP_X#_%0P-T1>5#I%48OIS+O*45W;.IHHR'$ G MQKK29;&,* V9U\>Z%5SJ%MQ[H>!@D&LYJ%E#?]P0!SZO1*6IIT<$1T'H=3/* M9DFA.<5])R_:BB]UB^_6KKWKUI@'8QK[D<_,@#0MP2Z@<8]LT%:CJ>_LIL\2 MF4W;?N) ;])'!%L"H5D44/5TE[0?[9>)K[%_5\5_+V^[R]BV!=3=%DS>7&77 M?L+MTC*,C50TK?#0[]OLMD>@[A[A?(^\6WN*MK,)#^&HO/-GQ*EU%NG3A;9M MH.ZVH1.E.CSKN+0BCPP,9!AUCT 6*SQD40_0MEN@L3.=SK-\J5/B?TDH9R.S M=T*]D[?=AZYM&\/<;AM5CU)Q1K^Q7F[E?V2*C&TYX)99_5 MEU"L[4.8NP\QXM294HVS3DIUVT*+57]*L:WG[^[FX3Q;92DO4XE2/LT!8;J= M3?KI&@QQ7M29!+$XXY6VJ6A_/0UL?8-_;49DG!$/>TB*QM )B[ =@SH2P/"_PH\*.X^QC5 M:NEA$OC=KGRT=4-8\.JQOCB5$%7+4JUOWS:CF\O93_659&?\C!Q/UE>LK9OU MC>]54CUF<#[)^0QKZ@Q*+^A[R02@EBOKMG"<@6-H OI\)H5X^ MZ!_87&6/_P502P,$% @ CX9[6 /Z.=J6 @ 2@< !@ !X;"]W;W)K M\P"U(SIPHM'M+$86\4C1G MN!0@JZ(@XM<8*=^.G+ZSV[C)UYDR&VX4EF2-*U1WY5+HE=NR)'F!3.:<@!B;:*RD?/)@0134E%UP[=?L?%S9OAB3J7]A6T= M&W@.Q)54O&C 6D&1LWHDCTT>]@#]X # ;P#^<\#P � ;6:*W,VIH21:)0 M\"T($ZW9S,3FQJ*UFYR9*JZ4T%]SC5/19'&]6GR[FE[-Z\/\ X?U?9AS M325AQA),GA*X6GDKW]_)'_M'&:<8]V#0?P^^YP\Z!$W^'>X?D3-HLSFP?,-# MV>12 4_UWWN#K,)>5XJ.,IA+>RY+$N/(T;=2HMB@$[U[TP^\SUWV7HGLB=EA M:W9XU.RR$G&F;Y"$5/!">Z9$80(E$2I'V66]Y@LLGVDOF\@+WL_ M>.4Z!7^MT\N(CCJY>VVI0+&VW5I"S"NFZBO>[K8/PH7M@\_VQ_JAJ/OZ'YKZ ME9D3LE74IY/'IME\G,WJQ2-;9_6'F_:+V=G) M)GM@-ZSYNKFJ^-5LS[+,UZRH\[)P*G9_.OF$/J:X,^@0O^?LI3[X[+2W6 MW]J+\^7IQ&U[Q%9LT;04&?_SS"*V6K5,O!__VY%.]FVVAH>?7]F3[N;YS=QE M-8O*U;_S9?-X.@DFSI+=9T^KYKI\^97M;HBT?(MR57?_.R];+.7@Q5/=E.N= M,>_!.B^V?[/O.T<<&J 1 ]@9@& ,&* =P98,,!TQ,#;&7AB"_Z( =D9$+$% M,F) =P94,$#>B(&_,_"[8&V]VX4FSIKL[*0J7YRJ17.V]D,7W\Z:1R0OVJ%X MTU3\UYS;-6?1Y<7-Y6_G\:?;>>SL^L.Y&OE!T5JD;RTJUVL^U(TTL9[FTW*9MSF3K9Q- MEB^G>>$LLDW>\&L-Z=SDB89/$OPF6585>?%0Z[@2/=<%O\E%6315N>(_/3AY MT;"*U8V6,]5SWI;\_H9F,SZN]H,+]H,+.AYOA.=SMLJ*!7.RQHG9XH.#T=\= M< &IQLZ6B79,[?SY?(9\%'#H\V',952(/ J(#G&QC O\ (&'80B[ M1&!,%(QN0 D.AKA4<1^44$H\P'ODP)EX[TS\)F?^S(=@_9CQ&/_R)L=N6U7:R73@_UIMLP4XG/,=K5CVSR=F//R#J_D.5)C;) M$IMDJ26R0:2]?:0];:3/Z_JI"W5YOXWTZY2C"J\GC3="?%^(K@SR,"'"T(T] M:0Q,O1")0V4NPUPA5XR(5(<8^(SL?4;>Y[/#?%'YCT@]"2$4LT,&^4!"P[S)0=OCPE4!*(Z2&C9%"L[>6QV6&3++%) MEEHB&X0ZV(["*]VE4XS32+[!@/NX)=ZHD.E%&2 [5=.W8FL&"7RKAB\Z1BA,1(%N72I")#IH2O MOU3#X1\T.!I!AY:&RU1;VP17IE&Y7K#2OJK*M"L^_M9^94;,6_ M*!Z^6"XRA\0^5-[6!9RV$/!UATL Q#! ,$ M8F;&^GX>/^NQ"%9X2&,W5!TI RC02!NFF)]+X_. M%9MLB56VU!;;,-Z]A$9Z#7WU5"T>L^VV]YJUI]_M6GY1%M/HX%CJ?'\LQ0?! MU?PZ4HZ T+QMDB$ R!57K1C)XANY+@4O$!/)JFQ6-#O%E*L+5]IEJ2H(GN>Z M,*+>H!>\H!>\AQ&I]A$I>$34!X6[B)CR4]_JD9Z*0!:OF ;2ZAA;;75NE2VQ MRI;:8AN.FE[S@U[S'UU:!UG73XD\7RM@,BH&HVZ?FR&)&9)J(4/7'1QSZY7_ M7RJQ@ZSNIT$@SE.1 B:C8GU'C\X6JW4 JVRI+;9AR/LZ !A.XX\JM8,L]J<( M0 RQN20 *A7ON^*BIH!)J6*$I,K& CR6+GT5 /15@/=7W4%Q1 VN**@4*,F/ MVAX>G2^B$L5..PB$J)@I(@#?;T!]/6&-U;?07%JC<73A$B!0L03U1+(-8C0 M"\03K;D")LTKYB-N19?"T#]0<$._]:H=]*K]'05XD 4PH>*S7Y$"!42JSNA[ M=_2<8O6(VRI;JO!' !B-Q*^O'("^B21#9T6R_ 02_ [1?5P7AR'9DAL0*"0LS5L#2K&+D2,R1]0W/#YRY[ M/8WU>GJDJ(Z53UO*9\5 B2_NYA6PT*,0@OA,F0H(*.#_!.1<@0P(\H( 1&L>LCYBKMB]YS>_>!SWU?;%T&V M%TVYZ=Y#N"N;IEQW'Q]9MF15"^"_WY=E\WK1OMJP?QWG[/]02P,$% @ MCX9[6-;BB\=@"P Z3, !@ !X;"]W;W)K+[&MC*AGR.$\SXRDBR=9_EXMA:C1\RHOJ@]GR[I>OY].JV0I M5G'U3JY% ?]9R'(5U_"S?)A6ZU+$:7/2*I\2S_.GJS@KSBXOFF-WY>6%W-1Y M5HB[$E6;U2HN7SZ*7#Y].,-GKP>^9P_+6AV87EZLXP=Q+^I?UW-1S$2>JY$ QQ_;0<^Z:ZH3^]]?1__<. _.S.-*S&3^,TOKY8>S\ RE8A%O M\OJ[?/I%;!WB:KQ$YE7S%SUM;;TSE&RJ6JZV)P."55:TG_'S=B)Z)V#?<@+9 MGD"&)S#+"71[ FT<;9$U;EW'=7QY4:F.1N\R0JUC/=U"?_- MX+SZ_H,]?;G_>HPGZ]?X: MO?G[VXMI#1=5ITZ3[04^MA<@E@M@@K[*HEY6Z%.1BG1W@"F@[2"35\@?B7/$ M:Y&\0Q2?(^(1:@ T._QTXH!#NQFDS7C4-H-QM40+V X56I1RA6"'E7&=%0]M MB&9U)BK3M+6C,O.H:O>^K]9Q(CZ_\TN7RBP78F@'43 MP%RC7WZ#9),5B5P)%-=UF<$Q=#7P]ILL)LJRE'FN3&\*<%A4M=&]]N*\CSJ@ MP=;N=7-FVX[6A\&\D(4CN&,[&U0M!;!;"S1A_.8!RH>W"/"J M#+W>U-,DSG.(96M,. <]-NEL1]O=I"3T/)MW6A%@MR28R1643U4;[.)9?1? M3GG+-\!(C:9IMD'[K749/4!^,JL ;.#WB%+?]X>+93!D., !L3BEE0!V2X%_ MP6*IM;I29(&NLVHMJZP5.,H132_5.0+98/1BK ,"4"E#%\96F 2>1:9A+1:P MDU[5]H"=.ZF6<=G0/H 6?VRR^@7V-Q)Q6<#1"LD%NIU-/OYV8W0@,(2,'P4D M'/I@,H0Z@G"+%YK%L9O&8>);-:D"!L!VP!M2<$ W<*Q'^\&^13ZV(P%,OVU3 M:#+&;C:^2A*Y44H->$!DCTH,&W$:J3,*/$Z&FM=@"BYAVQP33;+$3;*-. >= ML!5&)IADS)03'/H4-B4?P#29$D9HX&,+4,VJQ,VJ-\4C;#A9OA@ACHEQ$D:8 M>2. !D-*P\##-H":0HF;0N]* 6DA?4V";:J0]1(*/,?<&O@QX(:*SF0(29'W MAF;GL#(B#?I"IS-)D<9,$Z+E75\/8<2HBD5#+,X&8K M/H&'LWB>Y=8R@XQ)EF(?TW"8X V&?L!]1BV5'M&<3-RL"-)LO!',9A8A231U$C=U=D*R M%+!?-\:\1PRLAZ,A-QJL)L0/0F+;J9H=B9L=OQU:)$.YE.@VA[OP(&,:C#"F M 1WMY+$AH9CC@-DF7Q,F<1-FY]BF:J2\S:DCZBDRYL@)QHQ$_E [&RU#'$76 M+:#YE+CY]. %,WHPILX .#;P1P$W-B284AQZ%I:EFF6I=U1#- ,RJPYIB#K) M^^B.Z(E&VYT$S>#4S>!WFS)9J@P&4BX1P">++ %R43]3T2ALXQ0X!SUZ"@S\ M3S@.660)4JKYG[KY_VM<;THEL8]SSSGHT>Z-50+W7-[U.OI[1$*:;BL@J.E@ M&\+FJU_.T3J',JZK+]9-CTG]@O0"VGW3]I\@$<$9#X#?'.1CFI]PCP5A..Q_ MF"P#SHA57E*M"*A;$4#%E B1;O=G(]A4FNP*/R/P,><#@WK# LE@YD.1:DLJ M6AA0MS"X2F#*6W@JR+Y_FITWW045?RK?Q.K_Y?#^TA:Z@?XI@V2-AR+,#>+/ M)@VM)ZA;3_231B&+2=*[F9!M;R:H +O[]'UF=-2D(ACS/#)L"+J!_%E'M2BA M!XJ25^X^F".,]7>H:IHA19M,611BCUK:SU1+#QH>Q7"+K(B+Y #T)VVNGVJT MW4G0.H6Z=ZI&C'#IBDK9K?YP S]0@8&36+C';8"RS2EVEQP?8TW4?@;=G" MC/^D*H,95 9X25A@2?I,JPSF5AD?-R_S6+51%U!AI4*LFHJ]MU"JR6KTT-! MP"$=QI?)C-CN3C$M']C>?GU+KVU'#( V64(\BS+)VNS>;P^;UVC,_E$4^$.1 M8#"#LI%&%A=ZM_3W*80,$MHZSI%J]+RTMV)A;^>R>)A :*U YLV-&H^9NN^4 MLW!TV]Y@&! OLJ@;IJ4"/^L*%@LO2IQ\+ HCV9U@#L MH#OS9=/^>).*]MM;Y4QW@8 MV7:"YGGFYOF9#3&*:S07#UE1-,V&!0*)G4FC>F-C'N=>@'' 1Q$UMF0>Y5#2 MVO:#9GSF;C8+&O2]AQVJ]T:X)Z7W4XVVZ[:6 -PM 6ZJ:@/)NR%-ZH?G M-*3-0GKGP$S56C1/@>90G#>BK;G-]RI#&XI5=\SK)8B& TJKRE5;<4.W@7+@ MY&$4&PPM]]BX5A35ZI;WPY^9(!KJ<'W2(W>RNB^2KTLY>9AB;+>^N\7'WRL*8:: MSV""P]!G%K'*>X\+NF7'=ZM"1?_^*E9S4?['"/E$+8>M=W]% X-K\<+]4R6I M$S4@MF[_%>T,KF4.WR-S9/$(M:+J3;U1CT&!4A:36D[@0SUCGE5O5?B&YR$+ MF^3EG_.0VQ.8O=;I5]FVVH<;]!+UAMT1@Q6-K"RE=1+?HY/ZN=<9]B=MA9QJ MM%VOM7SBT:G"WJG#CG;[1*/M/D*L597O5E5];@9JAB3:1'= SGD4','/"EF6 M"%4O%ZFP-'&W6/J/>6-/W4D]ER96HGQHWB6I4/-X0/LR M0G>T>U_EJGE+8W#\(WX_:]\ZT<.T+\%\C4NH#"K@X 4,Z;T+8+N5[7LE[8]: MKIM7,^:RKN6J^;H4,6HDV(0DTK0")2ZM6*@5!=_NPV@>3#"1J8K.V@?;O=^R$+*6EVA=\ MFW-\SL0S='9"OJH44<-;D7/5=5*MUS>NJ^(4"Z8NQ1HYG2R%+)BFI5RY:BV1 M)194Y*[O>6VW8!EW>AV[-Y6]CMCH/.,XE: V1<'D^P!SL>LZ36>_,!OP,\.=.IB#<;(0XM4L M'I*NXQE!F&.L#0.C88M#S'-#1#+^5)Q.?:4!'L[W['?6.WE9,(5#D;]DB4Z[ M3N1 @DNVR?5,[.ZQ\M,R?+'(E?V%717K.1!OE!9%!28%1<;+D;U5>3@ --LG M 'X%\(\!X0E 4 $":[149FV-F&:]CA0[D"::V,S$YL:BR4W&S5><:TFG&>%T M;SAYFD\>'T;]Y]L1S)]I&-\^/<]A<@?#_OP>[AXG+W,XFS*)7*>HLYCEYW ! M,TR0WM,B1Z#7LT0I,0%2&[_"KS$6"Y2_*4JEA%,=5Y-26 M+SS!]Z#4AO$802PA#!O150",)Q V&U'@-:@\U!KM \_?&U4636@LBH+>?IEG M*F%0*+=93(?T>1*4QZDJ,U-*:5DIIJJWO680>-<==WN8@,]1U_YUJP[Z8#.L M;8;?VAP*OD5I*_[,U"P(CA=:7-!@BB]3Y\95U(C"R/IO-UI1Z[1]>?K1:?$A M.5^E(?QD,*)[C[+P.:A-DHZRX![46X%R9=N0(@$;KLLG6>_6G:YO"_QH?T = ML&Q8_VC*]CEFU@&D?%LJ , %P( 8 >&PO=V]R M:W-H965T&ULI59MC],X$/XKHR AD')-FR[8ZBZ(,1JW*\NGT==8*J9/5(LCN[&IA M>J^DQCL+KF];80]K5&:_3&;)4?!)UHUG0;9:=*+&>_2?NSM+NVQ$*66+VDFC MP6*U3-[,;M97K!\4ODCJK+'VS3*X3*+$2O?*?S/Y/'/QYQ7B%42[\ MPC[JSOY(H.B=-^U@3 Q:J>-7_!CB<&9P/?V)03X8Y(%WO"BP?"N\6"VLV8-E M;4+C17 U6!,YJ3DI]][2J20[O[JS4A>R$RK&1_K#(O.$RZ=9,6"L(T;^$XQ9 M#A^-]HV#=[K$\B% 1H1&5OF1U3J_B/@6BPG,9RGDTWQ^ 6\^>CD/>/-?\C)B M7#V-P=UQXSI1X#*A\G=H=YBLGC^;O9[>7F!X-3*\NH3^/QE>QIA-X+\PL#': M&25+X;&$K_1K232!OWPY :%+D-Y12VZ=+*6P$AV\H)H*3;-#=4C!-PC/GUWG M^?1V8]I.Z$/8S6Y?DEG7J0-TQHNM0M@S.!G0W4O*K4'W) MH%V_5;* WDM%9)'."M.24B$YM^R(Z:UTGHEV:*,*E26%4WO6.FV(I*9I MZJ$2Q0#ZT.62K&M-,-M>JM*=D8^\A[R$63IF-"0[P$I=68E"AY-!@ M/]H_4N!:>.33B20)QK \9"F4,PS+H.&5'^0YEGU @T MDBAI:P_P9+4-!>F&6*2 FBH$D;JJ3H$#*CQGAW4-E9(]U:>@5I!%*!4NU=&Q M%-I>RZ$GN=TB 7;Y<5C38T.%_!X#.WEJNF1G$Y\NJL.[YNC:7OLX_$?I^'2^ MB2_&23V^NQ\%=X$#A1693B>_OTK QKUA#!\SLC1D &93 9 >&PO=V]R M:W-H965TNF*[RI:]B?UD@6]M"Y/ MQL/AZJTJJTTE:K5X?O1R=/EJBL_3 []I=6N3OP6N M9&[,9_SQMGA^-$2"5*GR!D>0\,^-NE)EB0,!&7^X,8_"E/AB^KV,6OW M,E"PUA7_*^\<'Y(7S@^],'8OC(ENGHBH?"T;^>)9;6Y%C4_#:/@'+97>!N)T MA9MRW=1P5\-[S8N7>6[:JM'54FQ,J7.M[+.3!@;&VR>Y&^05#S(^,,AH+'XV M5;.RXDU5J*([P E0%,@:>[)>C>\=\;7*!V(RRL1X.)[<,]XD+'-"XTW^O67R M(-/]@Z!^7-J-S-7S(U J^H;=?3B[W\;G0Z_OX?$:2!Q>M_HCR7Q_D'& [%G M'/%*6FV%60B@>R-KB0IQ*7ZU"J\IVV@0;V4OXW.YJ2R\7+@GWU;BG[)J06MI M0S(AK9"@DQ9D'Q^_^G3\HRD+F--^*]2=JG/-8TN1R[(49D,JJ"OQ+F_,7-4X MS#A+WQ.;MLY7H%^%:%8*QD9$P45,+KX1YK92M5WI#0S1*)BWP;'>O_EP)0"7 MQ)/Q8 K*499NDES:%=!8%6)R>IY-SB?"KB2\A13AX%=FO9'5]N]_.Q^/SKZW ML-KU&MX$9)V W_BR B6 M^'93RX)VH-:Y>M2T\,='>.87:0OYA_BA-'-9BI]E_1F V0T.NQ'&@@DJ*PG9 M8,L7P!2QU$2X6BP \41CX#D=V=IE-C#4BM%P^(T?#_#:-L Q'"&7&]W [(ZP M!3%Z@$)PK3:-6KO] ^W\'UE*P'4I7BLKR]R(6Q ,M!2XBP;GML!""6PPOR-1 M* !RU6;B1WDKM1Z(=R!8;:7$.'."M3.BU[L$T04]$/ D\'XKK *J<=!:W8 X M/LVJ#"%$BKKDA9Q*:4U9Z5 MOJ%M0>J]"HS\FA/9B%J EVO3+E="-U;@A_B UV#'&\4_&_ *&MJ6A0#2-\6#$OK]@8&>H.3U:#Y)5'Q02TU;A BD*-^P*@@\S]: M70.O/KRY0B;\8FZ"W$X(,WI*/1V,PK[C3+7*30VV3"R-*6[A!EW%Y5=+/2]! M;JQ50/.B-FM6-)K2:I(!(.C).)M.3K/)Q8C>?#+*1D/ HHLAPN:&1:'<#@3X M%N Y &:U=:VJ?'LI?@&-7_2N@BSB@F4-,X"&\JP1 JRC^7BMI&UKT@W8)) ! M\>1\FIV>G3,1TU%V-AO2^I'#6R5K*Q3:;-"WG#GDK2Z]P3"=4LRX"F@*S,C+ M%E\%_B*FC8??OX-1:[QAUDH<"_I)MT;?XU,XI\R=?!'2!#.#8MW /TPY\(\' M&8@KP'*:$D%=*. QX#(^="E>TH,[A'<5:B4+T,\-Z"F,"S3\.K@> &I7G^F7 MN@,9I&$6J@!)!R6#R\C"0I1ZK9F6GJR,3@<77E@&CZ1"E6X%,*G?7*2"^-%6 M>^<93P?C.,^5JDD/:-L7H.A>]G8-RRNYDN"Z]R8 3?/D=&_ H(8VCG[7J+6U M(OWA'4.J@.G!C 'W@5,P2T76 #<9##OZ#%8[ 'O64\&7GA&@] HH!_6^ M%!\!353D4;PE9&D-_"87$)9HVEJT(*Q@.U$5@3$U1@(9PC09/5.Q 4+>;0 V M(-8A5D)LD^%U'EJ1,F@40@Y74E7'.0"(*08#IL%\!6T7;D2.FHYFD*,%$(S! M/<0[I15RS;?FP!(TK\ B_).>@=F1EJ9N.7(*\V0>MJ,U4!41%$DA50V_/-* M?:1%(YH"?:]X5O]<0J!%_TN)N5+HR=T8F(Q> ]6!=1@,,29!-A#HP]A(($@'X3BK-UD_=0*LF?0\<9\+QR#GGI ]G( M('6WDL 7MW\D7P9VI-$@A#@J&C'P5 #2;) N>'B^A;VK0 S)5@-SY^1OPZOH MY-W 15.#';KRN^-,'5W>[^D&\0"6+)&HB@G!IX,8 MP*K7M%HE\U5P&A,7.S>6\(HV$EPD>$R#+T;K@-= O\'I,15Z^C7&.H7"(34Y M3?E*%2W<'WBZ$8]$91I1*30"H'"PKV#U:U6B8T@ZA9Y>U8*>WJXTD*1)E\RR MTO_"+;U!IP?46+2DJK@676W ?5FK9F6*5%3)%V.R!WW.AM&=;O(JD=T^-(._ M9%T1S1VC-?KA[F7P3Z9$'?PAOS4B\9JA';G5%F@!,I)^&NC M$ M)C.U72?%LD9OI(YJX=\Q][[&4/IE7/R0;/FBA?U3D=Y:+4I&1_+8R+-E7.M( M?Q8PQ^_$EA\HVISNV@ZI&+. 7P!\!"6SP#>[0#^#,"LQ; E7XR(BW0@HP\GW M,.I7TY!@^KZ2Q!#"-=L-1CDEZADXN#?P ,().EH5N]W!BT:]2+#Y8\(S?QFY M2K!.>0!)&X'#D;.$$6=M(""V-BY#LK[E&)!1,J/:YZ)0B"ZWA)Z8,2K#*L#& MI6#*9E B@HJG<6VXIQ /D;EQG(#1OV-#6&,J <.%0&E<1-<<27H9)F(03SBY MU^XX4A<0;R,17OY-1P4R1KPH3JE?X<4OFLW #G)$-L3A1[AO@W2[=HS=(?J9 MFQM3.QV38(#/ %99U5K M4PRZDE7"=)HT\"%JV1JR#_9(_*<4G'.UDE']I0XO" *V@B+L.6()Q X<#KIX ML4)H0/EJ:TXI!H*CR ':E&!P,5E"@+66VQ#!K V%,3*JWD"\KS&MT8!PWZ J9+@=EP%J#OW["M-(I&PSY,UTZ*+I][LCBFGGB=<:N*C!1"(;[1;\ MM[68=)YXMUB@D[UH 6L0G#.0]CO\P_8&IM=&_K7?%%@(=*&[EW]2X(:L# 96 M:XSD7(Q]O4()K)&E,_"R]Y>T,\DL@'2;E+HF 4 M5S#XD$'CJ4ZP11R8,'2M")*J(=M4W?IJ*'Z2QH)@H0/'11Y-S43E& MHP"3%AULEYICZ\*/ L+(AH6"(C '-VE*R<55D4P@X _ :;V@3$K7DT2RG>:1 MP4@]W$9^QI1L"MXH]0-3C V3,U3; M%OT6'-DY!1X4T.V(9)"U]'/") /QBXF93,PLN\0T.=\%@\[#:2S#Q8:!^,E4 MR^-2WY \(@&7XH=[DWL1!/Z1),P.3=1-^"CG0Z'WAS&=Y2,D ORN2T$= MHBXL!I?>LY0X1\QJKF5>&P"PRJQU+H+S!#JF@9N@AUNGVE2B2>^3*K@MSBA* MQ% >'98J1W5+'%[VHCG[UF/M *MQL;:DNQ+$ZV![E4,>HR M'IUB5; ,[/+\4(IN\!C%&?_U%.=>?<&][+.'-] +9<\OZCY\0+?^7Z_^:GKU MD%JAJ'VQ7EU!N 6/?0KELWE;?@;/84DS?A6M&_<6N!N@5&IIP. V%*;7:WM< MJFH)+I.O/7K?IEN#1_\,8_R= CPFJ)%:8(^I\1$JMJ/#J9S*/#D;G*?U^6XO M09=5AXKE-%=/I@)_*#O5X0XF4I/HRN5/>14("LPG[3/L:1(>5 \V'&,'ARRVA4FY'0/%Q:MFR.7M(8GI MY>FBQ!+KR6ZY3,!NH3$&QA_O6X+TT$8Q@D/!4$KAY(F+Q?X4S7.UU!7!3>CJ M6.@:E EDW$>JK+LON]U'G*0$-A;"X!_ MSY=D"5W&( K;]*#U,< XQ&=>@BLAJ0J=EJPN%;7# G'E) M'@43R348RPE(X,HM-6CB># 5HA[7C[\)>,E6 +,?MR:^W2L5]R4/G^]YD/9^ MCYPR=2&?W#5\#UJ&!RQ>5Z\GHT/V;QBM < 8E;O^V99;U]5%^D2J7_>E$J6Q MQ0X>I_(1W+XR&'BAQDV*M0,V95Q?V@.P[-S&J5B'YDK0K6ZBP:E(5;4A 6)W M%(22%:Y2#NM#PQ';%'>H';IFI\3F[LL/>_5BV^=%P=G0%']#^9 N5^K6K9GS M7FPETD7-L<6::4[ ,)C8[N#!E]C'X2BI 2L3=VBO+J9X!ZSB1E,7#WCK1GOO M8JQ' ^R?!0\(/ML: P!TTOO>@5K :.Q%P+28'70>+QN,#1;]P=T IO8V$@\S:7? 30@ M_IVK=[^]?7T\NH"+X'3!.]^1R-D'1J,.%@C(:D42UG.5#711:8(:D[TN68=B.[0/NN(QH* M#=QGZ,$Z[8;IE*-@!255>[SCT->KJ-;1QN_#PE@ -=7QTI#?HN3GO0S?42=0 M56Q<*!Q$8199HPSYGL_=O,@A9P5;U_HN2/#'[[4E1'ZTY(_4,VK7G0Q)QT9_ M/0/=C^T=W#QLDGO&](N-<6+(Y]B[%UL$HZ"DS1=<%ZE2!I/;2HB$QFG/_"Y/ ML N-! ?H!',BWV\_2)-R]1"?'^]LWY_*SP7793=N?Y!C[**4VWN%AG?6ES)J M17M/.VH1:8^)5GP3"\I]7>!^99X:,0O%R]2?T[9V;B;EO]%C02W%VAI6$8V/ M/J1@$8%G>'F)B72.020A5EBM2HE,:2/T3UJ98@#*4)A8;*?/80%L@LJ(+ ?R M8[Y$Y.KJU(Y$1H9.?I3@ZZ"U096ETA8FR#:NW9"Z_=',+;5/]?F]$=S_[64* M",[;TM740W.,FRX*AR\'>4;CZXYD-&"T5LHDLO913.EKUQ 6EUNK^V4(-%K_ MEO0](DLQWA'1!^"K2R-#V YU-G7X77!Y+Z5<3R5FN%8R]M+6Z.^2)0TSI;,T MD4%=0QKYM+_BPZN(2!JQN-O%DR!Q2MRC&$L*@+">J,\!W0_([QY]< ]\,/.Q M*Q3[<>M1.[ _T'+X"C)R.GE$;A&;*2V=B$AJB=PCWZ\PON6>^4;>86>EKGP3 MO7.Y7>J& RW.I//.J I60-8#W0/P=037"*AD'%I,M?5G,$)80[X:.@%H#A>J M)L20=ZYFCAT4F,OF.C!%:5TN]SK[' QP4]#O[OR13M;D%])O-(?+KGDOGC6) M,_D^-==VQH?1.IL=\EQ<.'=T=*1V)R4(DA=2(^1^^QO60'"G!@_V?CSVW_]% M?7BSJP_^/M6G23D^J$;J,A#B'WB"IGHT.\^&LU%R<3S++F;3;#B:B%=8/^B_ M-IEFLXL9O'0>+XVSBXM1-CP]%=>QTZ_[VL59=G%ZFIW.AI'"\^Q\,LNFX_.= M8*W[[N@LF\+XT[-IN'2:3<;3;'HZ$Q\-FH#=Q8W.A]EX-,K&DTER]6*:C8;3 M[.)L'"[ND$QFSC8AFQ#DX.'&G:^_>5=I6\;N*L_.LLGP-#L;3M.EC[+3T6DV M!GZ]\T8X.63EVNIWN'R1T8E&X&FX!-R:C5%(\,@<'BOQ;@ X#WMW*AO#1LW. MHT!-4"Q /$[=1ME# O)DGX@\284D*NY>>4Z1@Y,^+G*T+5D6?[ ,[4M5'$/( M6U-=$ '/^72 893OR+CQIZ;XD.(,ZBIW!]QBU.UPQQ7>WEIP@PK?L"2IV[,$ MC^@&>4TD@WE1%2;UK&T9+3LU.Q]X=X>+<[ON)H1:MQ8D .(5?V[3N>3@'6W, MIN7>.HF!."9Z?JAQ)3SX0%R%16!]UC4Z4B\@N?28\:'VOY G6F-A M;PA?[3>FN@,%L3-U,J0>M!D>=?1'$)!BUU3J[,N'Y*0&MZ[VAO$#!#N0-B9C MV1[-/GBB>0RVF4^A,VN?L.QK5T]>I117ZDHZUELO6#L-HL$H@,58:^N=WM@) MY4;VK],ISQ U;02K^G3Y-VDLZM> 'D,;K]Q/34 M<6..N;Q/Y#GCFVX**C0OL)8[QI=%"YN"TE( MI#,]W3[J/=ODC_TQ8X&*_6WL4O3)S,)H[(KKG9J>BFWW_FA1O_,^X@!51C9& M\]E<[M[M&,\OP*:H[NY$;MOXAM;]<(/#X/CAF-R[JV/W2#@;2YT 80HGGEMO([/+][@*BMVY@E8@U6'>42#Y1FOK\>H"D#A*70]G&[1*7+187($0#R7FX!GXHAUH!;AKRO)7/-- M.-([$I@>C::L'+*G?SB:3KR[-_8O-Q8:8T/&M8) !7N\KTP-$8'T6<=T^K # MU\D.L%P?XE=",- I-GK# 8WK_Z6LSV';UH!CJM%D1)Z[W@Y-$H8$_J)NL;$9 MA:G*U7\:&9*]^N_'A>!N(NW[_=Z4N_QE >L^+4"G)$M,<>\_.Y]UC\0GGEKB M=X6>>V)IEIZRYT/W;&%:=%2J12W9_VSKF$'F;S:@77$?1P[-3)\,G='['>;L@.5?*HY^2S$@6VBSUQ< M&0\?]%$9^Y#[FG7/1[OL\BM 06U7XC== ^G^VANK2_>=<\N9O>(7>8$X% 411## EX5?O=8#,-< M_<12\B8M9(_XQ9OC\!?WMEUI<+HM;PKI;M"_5U/FP!1[O3"?QCD;#:D_T3W M.QN/R*I.!N!PE"U.\I\U]U^N0/_5#D%L%GWDH9/X[91^W<^='7]R=I9-1[#W M%V,G!M-L-,6$T*@O!T[N=[(R?V9QXD3-L-L-IMFY[/S0./I M^44VFIWU:<1FE&1U7XOO7X_?SI#LR_M_%6Z^#SKTQNL02_J;.\69&-OU&8U+ MH& ^I,0C4SAWJ&6U53RDNO]\-./B4_U=_S,@&'^!BE#I,C1DN0YO+)#Z \AT MV,_5 9_JSCC[3YOOT5F7T.CK++5*<0Z^KZP'OC*0'NU>\Q?J;D+K5)CA.XCFH!KPX'9[,C MIM__:,R&OJ0X-PU( /VY4A+B2GP [B^,:?P/G"!\6O/%_P%02P,$% @ MCX9[6,&UL MK5;;;MLX$/T50BWZQ+4DZNK$-A"GN]@^% CJ9/>9EL:6$(E423IN_KY#2I:= MB[WHHB\69\@Y=>94QWY?NZJ*#E>B([$#BSD:KE M!DVU]76G@)(N9\]VIQ4SN3%,+N%-$[]J6J^X!::Q@(AC>\#IC>FM(&GXP/Z7ZYVK&7- M-=S*YM^Z--7Z7[/NU+/5(L=-&MD,P,FAK MT7_YCZ$/)P%Y<": #0',\>X3.9:?N>&+F9)[HNQJ1+,#5ZJ+1G*UL)NR,@IG M:XPSBUNN*\)%20H[@.^[^HDW((R>^0;A[2*_&*"6/10[ Q4R\E4*4VGRIRBA M? G@(Z^1'#N06[*+B)^AF) HI(0%++J %XW%1@XO^AW%]E#Q^U!6*U>ZXP7, M/12#!O4$WN+3AS -KB\0C4>B\27T7R-Z&2J:D+-H%V:X B*D0=UIH^K"0$G6 MS\140 RH5A.Y<<:M;#LNGC]]R%F876L4B'A$I15RYT T,1(/M*E*Q?>\(5*1 MG88)N7$ N+W0KD&-6^RHX(!1!W[D0QY$;2FL##>@22F;AJNS)(IS55%2BZ+9 ME;788J#4<*1:@I H+VZSU *5IQ2(HL9D$E,H7,Z%2_8P64T& M1U"8OA*: M3G.$"=[0CP*:!=,7_.*$,I;1&!OP?UNZJJ0R?]A#C'O>25W_B\5USH#:"H-DJV[\K*[2E_K7$4^+#PU02J MJ)>.LY65DK(<43(6G7>=DD_V/V$0,1)7:+HSC;Y[] T9)^_]H_HG=UX+:NMN M=MTGZZ^_T3L^'F[Z._.XO']Y?.5J6PM-&MA@:##)$H^H_C;O#2,[=X.NI<'[ MV TK? "!L@MP?B.E.1@VP?BD6OP$4$L#!!0 ( (^&>UCVC3F@2 , -X( M 9 >&PO=V]R:W-H965TV'+D'2=9]IZ603D4B/I.WFW_=(*9+3)-H*%/TBDL>[A\^] MD*?Y4:I[O04PY&M3"[WPML;LSH- %UMHF)[('0CIA!;4\+KS(>Q3<\LW66$&PG._8 M!N[ _+V[4;@*>I22-R TEX(HJ!;>972^2JR^4_C"X:A/YL1ZLI;RWBX^E@LO MM(2@AL)8!(;# :Z@KBT0TOBWP_3Z(ZWAZ?P1_;WS'7U9,PU7LOZ'EV:[\#*/ ME%"Q?6UNY?$#=/Y,+5XA:^V^Y-CJTM0CQ5X;V73&R*#AHAW9URX.)P99^(H! M[0RHX]T>Y%B^8X8MYTH>B;+:B&8GSE5GC>2XL$FY,PIW.=J9Y651R+TP&@-< M #^P=0T^$6#F@4%TJQ,4'=*J1:*O($64?)+";#7Y4Y10/@4(D%;/C3YR6]%1 MQ'=03$@<^82&-![!BWM?8X<7_Z"ODY><;:&2EZ'L53G7.U; PL.[H$$=P%N^ M?1.EX<4(T:0GFHRA_U!2QI&2"7D-C+Q]D]$POOAI(Z8+FC4HE[)'H4V=_5#R M6;$2\!8^8]/K_D;BS$^2U)].DQ,AG?E1&ONS*">W@U&E9$.NK_Y8??G8ZR:1 M']&\7\8SG^8QN39;)#5V<$RIGX:#(.8CLLBA$3#IHXA$T]^,\)9/FP;$Q5C#"KY#XRFH#)9'5^:\NC&ML,%QL1@D.[G;Q^DX2 MTI#<*'G@KEF\;I^$6&%9_H1B1"^&X!\5-P8$QJ$BY5Y97C9X#\#4D+,<&4Q/ M\8()8_-< M@#"*V8ZH+=,.5W%]3Y@"4G)=X"%8"5R0OZ0!Q)N\]*0%)SVG ;5QG=56$OK= MMI]>VC?OR[9G#>IMY__$U(8CG1HJ- TGLZF'A%PW;1=&[EP'6TN#_=!-M_@# M LHJX'XED6BWL ?TOS3+;U!+ P04 " "/AGM8*X24T;4" "$!@ &0 M 'AL+W=O9$M2!Q9:YT(RQ.]2(TK08Q\Z"F#ED496$C*AF, MA]YVH\=#M;)U)>%&$[-J&J&?)U"K]2B(@ZWAMEHLK3.$XV$K%G ']F=[HW$6 M]BRSJ@%I*B6)AODH.(]/)XGS]PZ_*EB;O3%QF4R5>G"3J]DHB)P@J*&TCD%@ M]P@74->."&7\WG &?4@'W!]OV;_ZW#&7J3!PH>K[:F:7HZ (R SF8E7;6[7^ M!IM\4L=7JMKXEJP[WY@'I%P9JYH-&!4TE>QZ\;39ASU $;T#8!L \[J[0%[E MI;!B/-1J3;3S1C8W\*EZ-(JKI#N4.ZMQM4*<'5_)1Y!6Z>=A:)'.&<-R YUT M4/8.-&;D6DF[-.2+G,'L;X(0=?1BV%;,A!UDO(3RA/"8$A8Q?H"/]\EQS\?_ M);D.FKP-=6_AU+2BA%& E]V ?H1@?'P49]'9 6%)+RPYQ'Y8V&%H>D)Z-#D^ M*EC$S_Y;CP< S12T/X2MT1V&:QBY:X4&@HTU!&]F^=#[?" YS9.<)FFZ9\MH M&B>4QXRRC [Z+ MRY(,N5)R[^*]\-WV242S+'L=+J,9(G\H*VI2O=KF.*;1(*))S'>FB+*\H 4; MD.]@##Y9K1%%6J5]U=GZ931*$IHEK+>D-&QN9(AK] M\WC/EM TC>B@Z#?MK7L9[E6&!O3"US]4J5;2=D6BM_8E]KRK+#OWKCY?"[VH MI"$US!$:G>1I0'17\[J)5:VO,U-EL6KYX1)_$Z"= Z[/E;+;B0O0_WC&?P!0 M2P,$% @ CX9[6%AI;.5%!0 5@X !D !X;"]W;W)K&ULU5=;;]LV%/XKA!H4+4#8NO@BIXF!Q-W: NM0I.OZ3$NTS)4B M-9**X_WZG4-:BIPX:??0ASW8$JES^\Z5O-AI\\UN.7?DKI;*7D9;YYKS\=@6 M6UXS.](-5_!EHTW-'"Q--;:-X:ST3+46%;IT4BG\R MQ+9US=&PBG_F[DOSR7 MT55R?CU!>D_PI^ [.W@GB&2M]3=-SR%9<2!8$9?Q]D M1KU*9!R^=])_]=@!RYI9OM+RJRC=]C+*(U+R#6NEN]&[]_R 9XKR"BVM_R>[ M0)MF$2E:ZW1]8 8+:J'"D]T=_#!@R.,G&-(#0^KM#HJ\E6^98\L+HW?$(#5( MPQ2Q@##;UAJ6=8=?ILQ+?\F)$LH22-$ZS9^1E/=#,R\O^ M"]#1*:1!SN2T'"R2<]NP@E]&4 66FUL>+5^^2&;QFV>LG/163IZ3_N/A>%[, M;$1.2B(W_):KED,Y%;I2XA]>$J;@5^M6 >E:2 E;4"W%279F^*%\ ZLE&RVA MKNTY>?DB3^/LS4][0C[P>LV-SXFGB#!7AHOT%&"G2[648G\9PF>?H:+'?0 M4Z$Q/HDVIW$^I_D <@^=QI,Y70+N^PRAH9#"/O##:O%=O73/D^]AV)OPDPR>W)%]?% 64SL@.IH -P.CAO M.+)AA7L_ MF.18$N*TQ M M0&9NL$'"W $KWQ#$X[)N_-+K1UP4JWTTB#_"<1VA&&#N)4;)FJN&\_6';0 MIM#<>T70C^#$$FH3W#:,+QJ $TU@(5M>H3,0=C)_@_*@AGF(.9P)#4/UMG?[ M 6E/?E3EV"$._.L].4MI-IW12;;PW&?0":>Q_Z%Q#?<'-;FG?>2?\S/"QMSR M#O;1ZQ!A<[&B\#I*(5LTI OBE7?X=X*V925IE06@=B-P+!K2,.,$DW)_] &\ MX8_'V,CT6HKJX!NT__0\,-P?'D)L6 /[=SX\(/@LF:6C%,YZ4F)\,4H5,%68 M^2 )U(; 0Q:!NF,5/LLAJ-J("F:')/RN"8U8SJ$7CZN M-%P_C-KDD$63N.<$%D"Y 9@C\@$<6)8"K3H.[^!(T %\;% ^F@]#\2-5SZ#; M,%\OLBWO9V#Q< [L^^''3F9C.CIUH!P/SOHU-Y6_T6"Y@4/#L;_?[2]-5^&N M<$\>;EP?F8$LL9 ;&V"-1_-I1$RXQ82%TXV_.:RU@WN(?]W"Q8\;)(#O&ZU= MMT %_55R^2]02P,$% @ CX9[6.:V'#\.! - H !D !X;"]W;W)K M&ULO5;;CMLV$/T50C'R1*PIZKZQ#>RE10MLT$72 MIL^T-+:(2*)"4O'Z[SND?-&B7KC%%CZ#_:-_UKB:G[Q4LH7. M2-41#9MEWL=.WRM\D; SDW?B,EDK]=4M?JV6 7. H('2.@\"']_A 9K& M.4(8WPX^@U-(9SA]/WK_V>>.N:R%@0?5_"DK6R^#/" 5;,30V$]J]PL<\DF< MOU(UQO^3W:B;% $I!V-5>S!&!*WLQJ=X.? P,D;T5DBNHK MT'V2/RX M*E5GK!Y&$F5'>JVV&HQ9S"W&=U[FY2'6_1B+OQ$KY.2CZFQMR$]=!=5K!W,$ M?D+/C^CO^56/CU#>D"BDA#,>7?$7G=B(O+_H?V%CC!5?CN5VVZWI10G+ +>3 M ?T=@M7[=V'*/ES))#YE$E_S_H,SN1KKB:QOUQ\N3 ',4SDM(XSVG,V$79_2";2G;;,TJ>4A;'-$G"LRBB/&N!T^/V1L+[4DM*F@2IS3,DM>B MF$9%0G[;;&0)9#/H3MI! R4;^>)>S!M (AI%.1+'"?(0TIB?_89(1I9SRGF&D+"C1%D.[= ("Q6>VMBGI12>UZ-%7F#% MB5)L/".DG J=(+")__P3VT_(W&1T#B;VDYXBS^#F,V@1>(\3 MJXAH&M=P2+4P!C""K84ETB+ST!J< $P)O97KQFL[^QOR.&B'SV'?@]"&@+LD M_IZ>I][M6DIF&64%]FF2>^&,%QG-' %(9@_^OF^P8IC>FP?-3AA7T1(CH=B= M7;AO$,RT0^ %1R #7G>&I<4(C!U")J[KL/LRS\2_!T\HN73*SR0MZZ^<5 M@_"'SHZ7^DEZ&HGNQDG@K#[.4Q^%WKI:-;!!4W:3)0'1XXPR+JSJ_5RP5A:G M#/]:XU@'VBG@]XU2]KAP 4Z#XNHO4$L#!!0 ( (^&>U@-ZQ!V8A4 %L] M 9 >&PO=V]R:W-H965T<;6__I5EHWR==U4;H71ZNFJ9X>'[MLI=?*C6RE2WRRL/5:-?BS M7AZ[JM8JYY?6Q?%T/#X[7BM3'KU\SL^NZY?/;=L4IM37=>+:]5K5VY]U83+H9I'W9;T M8OQ[H/Z&SXZSS)735[;X;/)F]>+H_"C)]4*U1?/!;G[5_CRG1"^SA>-_DXVL M/9T=)5GK&KOV+X.#M2GEI_KJY1"]<#Z^XX6I?V'*?,M&S.4KU:B7SVN[26I: M#6KT"Q^5WP9SIB2EW#0U/C5XKWGYRKC,EHTI6YTG4'6M2%CN^7$#XK3D./.$ M?A9"TSL(3:;).Q!:N>1UF>M\2. 87'6L30-K/T_OI?A*9Z-D-DF3Z7@ZNX?> MK#OJC.G-_OE1A=#)84+D)T]=I3+]X@B.X'1]JX]>_O3#Y&S\[!XV3SHV3^ZC M?A>;R>/DG?YJ,IM4M?T"FX;MW<*G*GA(<^@,]^]R/DKNVNBG'\ZGD\FS>[9+ M?BNAE,DX39J53J[LNE+E-IGKI2KY2=76KC4-?5S;=KE*3..2]QH?U84J?'T8?\8[IOQ_=C*Y&R>6R56ER0\1R\#SZ5T_T_.?!.:R%0U]0M1YRT%RKS!^^UM6FVB=V4NG8K4\EFD_$8 MGQ4%K5NJHL /O)?D:ILXK38LD1K"KYU.K%M;9QR.X!14*L0K"+5)&@L-)(7- M6)"F3+ ;2;Q,?E9?5'*%]8CAI8$4O)2(*95EHCY3+I/*5)H,Q1&Q'+]BTT08 MP ,Z'[\)+5>V4?-"^P_=UC5Z/4H^>G4K,%X;D,'YFEJ53F5B6BPSL1/#)C2% M?FZNR&"RE2(A3L>C2;*"G%4M[Y/!)& \416T\M4@$.MBFSR83K PB W_;58F M6XGUU;:R1"O2V.3),^?EM%'.RZI3ELY'K.7Q[%GRQD(#&Y(&F"3%.LWNKU',*'%$_3 6\+DQG8T18'7(/WS-MFK?]J38T_JA84LZ31 M"-0UVG!4U@P,![3K@>GNNH>=T10T<^3+1O/KW^7X0=6)L(3!5"Z68DSO^^E=!! MSZY'OQUP@0U/K37'/XH;R0?K%,*0O5M4E_F'/LI9B>::Z1::S<\?(DB) M&-)?==8*$VX%WUW9 MN[1"UKK=F!Z(R@+$_8O]86_UJ*42"')SX^/#2/>.'& MMD7>A0;>D8,!_2]O=0S 3:'$16W7+"$K:8A2BI",N47X,0A%[!LU.9PWHUI5LR-7BPT8\_ MU\+44"C%][_#W(B)F=(TXMR41?+DXF)T]F-0"#EXP^X"_D=D/&_TO&[)A6 ^ MYPA7GQ__"L6PK%7FPX'$!@+PI)7QZ.3'*$.1!T 6(EHQNMXZ_^BM:Z-K>D@FM5-X'>Y< >XJ/'D>;R^II<"+DC2K@4N#LSF^MFHS4S%[MAP _K MM7'.F^I.^NNQQ.O+(8 @,K\@K-8E,[C_:DK.7&L&?25SX9."SFK=^$AU#2,M M)7_DR1O$=P3@CKR7S*?&%- C[&7(ZD?SI86)12S>7'\,3%)^A1]'HNE#.NF( M= ;$ES?OY^8/%P#R>HOP 90?V1&+E*,@4X[$VOK8B3?5#C M.E0#FVHVB"ODUNYIY!('J)W>349B0$4A$'&F4\D.]022=EAF)T8F,YZ<^>)%NM$.D='* A_CE6 M"!@6^!&\J8^S/EY%H@+LD$BHRSQ\[-<3,.7MTKMXDDB]4@BQY%#(, P1-(P,O%DF.M.JM=F>9_BH/$M9+")65=@!0AC*2 MAN#H,\<[#DPFLZ[QJ72E)%V*@&R6M76O'I\>#XD%041$UZW;V<'CRD$J$"E= M<+V.TI!LJ]:91N(C5 #H0">/H_Q;?M3%]XZQ5[#-K,&9?]%(&Y0#%Z3#SA<. M?XY("5A5KSEXP69V3R8F('NR!T"$G/T@)^(56.S6Y.0$D/ M3,)*/"\QQL-J J\PBXMZ7=5+B%:Y>%)J\W9>O MM\9%4?*@(,D2_('% 1@>?TN@7@ZT=D\6I$X&.'1834YOI0D3"(F*ZM*BL9([=92Z8GR:&W%-[/^V4N.D?@ MJW2?[.\ZJ:C,SBF3B<8\<.[%B]]=ZRK?7PX25)4CCI@_G'LZ?LPXG8X?Y35H M52"C[1 P=<,H\/4KQ'R93+01QP'#Y4!; @:&3+E36WD#@QFI H=Q3"?UFHMX M0N!8F"+$A6\; "<]8B:GZ T_K=EXT^@DT_,XA$=>M=*F_N86E)^RHLV%)1_, MN#.P[Y7GR2=("@\9V\-,;5$0T@C +\^-ASZ3V9-T M-INED\E)C_^0+-UN$32=R*G(EO(:U3('HMB;1:^L-5D$H%PPDXB!NHI0_S>] M'?*U'%ED3R $2*V)DR(/50HV:CB<%A,C(4&M/J-9[D^P%KHRX6ZK#^GXXZ O M6QB@?)<,FZ?LZVK0EO40/V56,UTS#JQIKD%E3^'SJG!$.=(UY+4,6D)C@@[: M=Q[Z:@^,(Q*LK31&7YD_PN\Y)"6 M]Y?X&"'4>.L)!N&M*$(LG6$(:)FF>R*";[&B/@A>D"9&/3>-![)='AJTII(K ML%L+;KM!"BDZ"#Q<]LJXJB6>/!P1G_$M@7#:]T>KHG7)N_]^_P".TCU\V#&OOQ+R4VO;=NG_+QAP8Q:F1RS&T5)1^ Y1H9?L7VLPWF%E0CI.,);46+?*%.Q(O>5Z M/F\9^3*J\7%GF(P/Y"3$2'&9-&@F94'Y-EGPU-A#H5\*##T"W1+BA(.4U%)B MB]@1W@8Z)#4Q(U3!S;N:[=MB"_X1MB=O1]!NN5[B.+)[W0'1MT;A!=>C5I-PJ6:"*BJ+:JY9QS^]M ML?7^VG=^>GB&>)RU'"M=[Y_AK&0F""^E;Z)A?UO<"O!"?&VU#W1]]9.1$@K? M=_>1?SEH$M&3KJEZH'\2#(CB[0:DZ&?, TP8;+B0P[O9 <\L%+6[0A.#P!:- M!833.VR(>U,@FVNIAN1PMFT0W3M4%LOHD#D0J5!,^1:Y7B"<-2ZR-F]I8;\Y=Y1AM9RH#1*9>[E86(X71Y/8BEXQ;-6OK<@S4( 5KR4#! MTB^V/9,W?%_'_'MP&E/*A2"29.!DP.D]MP?Z/J#A>"!*I!W(*/]25,E%:[;.O[T,%A]PG,$ZGLY.]YT_.TM/36?*6"'6G1<4U/4O/+\X/ M/?I#DOUP&YC-Q7CGKX^6>A%^(=SK+LL-;SV@768GX_1\?#I\>'8V3I^[O9V0E(QWO-SB_2\_-]*?W3G_\#IY2+4/<;(1L?&]L'. BAK0>= M2?2_O;7N&\&@/U'GX+%$@X^#&0 $2B'D?=ZHHH6[UKC_Q+MUR#HD_:6?G3Y* M7G_^)90RI!#:2K6,!5!CK;5"PH:J4)'W M.!\)Q3JC*@5N)8TXM42Z=]2:Z4?+[F_> )+^Q#^_D^3+J__GV'W.$W(:W.>" MF)J5J7.>26S[!FWA82K!ZT>A#4F1^","PRJY0OXL@)9S@HSW3+XH?K_K9?E. M4=/3#5KU>P3[H61T58&[)KZ+0DKM&IMY>F#:+WAB<#^(;%NO*P'@4HRIKA%A M*[&SKJ?PD&?S7*%RC<(7BOI9;NAL2>:O3,-I*P"]X<8\&N'B F3>*;;,F<>5 M?MXC(#F>C/LQS![T"?T0,'5Q,;JX^'%$S88_LL92&)B$[II<;(IN&\&PM9_/ MJ.2-[RZ)^KI.)BH0::8=U+(O9]@JZ!K%VOK:1OP#G))::#ZU6P_RK0??&?0( MK9:V%'?R#OD<(_H<+CU*/O=]937'GH])PJ -3KPY'.9W"1V0JME8O)HK*BO6 M9A@SO&?+V7W?D !-P;Y)Y5C3UEX^D.2GJF*7;>OA79I0.<[$/D-W1]I2?1^_ MX#Y4U\Z[+M1VZ,3[/A0[2^?JS$!\E<87)'<$1FZZ2Q?(@U.G,REYJ5GA\^JF M-X/D(0\I:4Y3^N]?I"+\9VUWCVYW,4C#)ZQ)@.NL!8^A:PK-WMG'/K YLVY[ MJ.[+A*R1EJZT:,!/#^2'4D\E&'G-YH!0TGKET0+]WG.#5_C2D!_!20'=;H!_J?%S*3!MT89K M?V+[IGG*_AW\QS-^R*CZ2:?HC 0S_Q*5M=2K"R:6S&W9-?Q\/Q#/N7.8GH[' MZ7@\3A[^42))^";B&RK5?D6HICC\<65;1]$D-"VOJ0?_*(HP'.+"$-#2./$> MUMG#PXT?\=AHTM^LD =V9EBB+$Z976T8G8_^I!.FTM,28_:=2XZ4]I F0G>A MM_Z=CAKW^9L#I5R8X&KF/?15B"%/A)@9,=H(MQ"D; Y+N1*E[TM8/X_?<=0H M!$=-B;"9JA >I!ET8%^8:G>K=>?$9%KWZ(7%W[&GJ1+,2$&LX3+R >JT-(W* M5AP+B"5^HZ:;K)*Y0P"1QF47OKS+/ N& [I[8I'9"2RJ63NIM[ MT[>&F\LB8JQK2VI1R[2=&DJ18/M.BH]TX%G5?JAEJ$G4#&["S85!/T@JU(;N MOT?WX^AFG+@Z+?-YIQLC\^*'9@2&?7^Y"Y-\[\(TK>^H2%U0Y(+$& MQ/ JS*.N=N91'=+\YLH>#$?ZN<,:NAAD65 '+6J0A*F9&!W<-XH*9P>W,O1W MG ?D>?<>/'&GB*=-= $U<50['^:;[CG'4*-['_:RY7E?.)@_T3?923V:\R@D MGO2:\DM;^B\%W!=^42SPIGK4V?M@_MHOZ#/Y0+STUN!24V=J^FLS''7'M@MG=(>XSW:*Y+,4N2"6+/$F@]N??IB9K\7STWS[@#A MZP%13N-K>FZE>9;>76I_(NXR[)1]VR & 2)T@24^L'$RMC$[YD?3C^;PJWT/ MO80O>O06M[[XAE[HX",Y4\9B,*M*N9(BH6EG@O]]!^F]X1:NA-"5P(I7]!62 MT!/UW? ]AK9);MC#%N]7(%0OB$=[QD.)Q.U\*6&?E0^T(Y92,''#<7DUK#^5.%G$;?:?^V" M3DZ[0AQ#EP%Y3D>A!M&T-:&3?4B>V^Q/+O9#,4:3- YE7MEJ59B,'EEZHPBZGYRH%8#U?G.?T:W])EG%W@"K86IUP%@YM&- MCT;N@>DPS-Y^1S#MFFR"/4[$HKZ@\&8X9@@:T<",2G[QYD#G&S.X_0GCAB$R MEF4!RG4L,?,=8L*/K>!'6^Y/@P\.2PY]I?(X^L+K6M=+_EJOA__RW=?N:??- MX4OYPFR_7+YV_ ZYCKYR4>@%7AV/GIP>R?P^_-'8BK\^.[=-8]?\ZTHK6 HM MP.<+:YOP!VW0?9_ZY?\!4$L#!!0 ( (^&>U@THLEE< 0 +4+ 9 M>&PO=V]R:W-H965T-*EY M*0;+N9/=J^5<;DU5"KA71&_KFJOG&ZCD;C'P!YW@H5P7Q@HFR_F&K^$+F-\W M]PK?)GLO65F#T*441$&^&%S[ES=3J^\4_BAAIWMK8IFLI/QF7SYEBX%G 4$% MJ;$>.#X>X1:JRCI"&'^U/@?[(ZUA?]UY_^BX(Y<5UW KJS_+S!2+03(@&>1\ M6YD'N?L%6CZA]9?*2KM_LFMT?51.M]K(NC5&!'4IFB=_:N/0,TB\5PQ8:\ < M[N8@A_(#-WPY5W)'E-5&;W;AJ#IK!%<*FY0O1N%NB79F^4D8+M;EJ@+"M0:C MYQ.#;NWF)&U=W#0NV"LN?$8^2V$*3>Y$!MFQ@PGBV8-B':@;]J;'#Y".2>!3 MPCP6O.$OV),,G+_@1T@V+J;G7=C>N-0;GL)B@,6O03W"8/G^G1]Y5V\ G.X! M3M_R_GT WW8Q&Y,3+^1K >16UALNGM^_2Y@?7VFRV:JTP#HF1G&AN6L.3;"] MR34H>")<9.3^[N&6E!D(4^8E9"0%9;#!2?GRA+$[0H%M_U*L3Q6<.U- J5!+ M;\ U(=EJR+<5J7"-&LHJ(X(*)X2^M+@R((+7N#@2LLKCQOK7]+C5R! M\G(G<"E"[*C46&]+3!!7FXNVV GXO%=_'&+C4%'I)S M)/;(JRT0F9,+G_I>0H.9YV@?L^PQ%%+\G")D,$"&+;\1[1$GPX[VR'EJ!@'8 M&%;<)0PIZ9Y60R>5NHTX3]-MO45=&XI:*E/^[>Q09_1V/.HAY+;\Z%]B6@Z94<.^D][[$>>EE5IGG$V"_R8 M6;R8#H$I37O &67ML:]+NF>$TJ:6]A@L J=[_5IZ7TO"OP1TZ =T&GBC$UKG MHCFT51[1R \/^L,9<\A&WQO/84R#A(U^,)X()60QC>-D= 0OPI]_QON0T2@, M,>1]Z(QZ2:M_,D$I$6!Z51;0( RHGX3]6J2)G] D2?:RZWY*<"Z$!\8LCBB+0SN%.LS=ED_9-*1)-#O!.&S36Q X;VOL&5<_C M\JA56\=A=&C:6W%::Y5>VE^SOI=7,5.Z@W%]K/7*U+_+16D*.I-X[# M 5'-);%Y,7+C+F8K:;!EW++ >S4HJX#[N92F>[$'[&_JRW\ 4$L#!!0 ( M (^&>UC3>H8W80< -X6 9 >&PO=V]R:W-H965T3 $FZ10/LGBZ:G+/H(RW1%E%*5$DJWO37 MGQE2DNGXDJ27%\L:<8;?W(<\WTCUNRX9,^1K)6I],2J-:=Y-)CHO647U6#:L MAB\KJ2IJX%6M)[I1C!:6J1*3. RS245Y/;H\M[3/ZO):R)HJM+D97T;OK M%-?;!?_C;*.]_P0U64KY.[[<%A>C$ $QP7*#$B@\'M@-$P(% 8P_.IFC84MD M]/_WTG^RNH,N2ZK9C11?>&'*B]%\1 JVHJTPO\K-SZS39XKR7'N;#+'BG&YJS MBQ&$N6;J@8TNO_TFRL+W)U"E ZKTE/03J$[S1>&8.%YR7S)R(ZN&UH_??C./ MH]E[383[E$O(%FU(HSBD&!>/1*[Z;Y# \+;B.2.T+LB&*E;*5C-BE1T3"/)^ MZ8:;DABF*DW6D.GPCYB2UL1LF'A@I+*.#X#&("\%?"\(U1HJ" J62\'7U*6< MP@6Y5 6N,);!VK0VY(&*EB$\)-I]24,?(=V-)O+![L@LAC'Y!)IV*S7S5#50 M[T*26J*'Y0,OP)4$2S%Z>E )H&TW4A8XA P4.S#!X2UX MG2M6.4,NI8*01M0.L0;3&H@FU :,U^MV2'>LCN#_&N2Y;F%CH#=7'P".*9<5 M,.5V5XMOW[-+"5'H5F-.60>=D3RE24H",1=\!-AC $)Y@*?2% M\ X(6,_H09.M#%P8_2N:_[G [RP, 6#XB)2,778'#1B43[!VA,T1;6@$"5 MZ(]'DC/51RO; /D6M.JO$2V;<* /AB*?I81FY4:?42X<1DN!2^L/Y80\F!# M8LN_RW J!": 1JP@JX7BK,0CHK$9JKLJ G)TQZ%;,* NI3)GJ$"O* 8R^PJ] MO_,IF,\HBCWN#&L3.IM[F;JUP)APY5OJML M]3-P]3N"92!,WO_M)S1P5BTA'K")GR3V3^ST_DM,KN[N/MS?'=WBIJN%Q[Y_ M5JRAO.@#U]D(R@CLWY?1SI@]QQL216$P32./DDR#+$Z'S3H.\+PM?K7A=8LY MT3#ELO8@G"C>AS<+%K,%^8^L\V?TZ)^_N#T@2%Q4*YM_J4C#? $Z?38#&?[="B,-JAO?;Y\?;J^O;C[?WMAWW? M/N?3_COTDU:YR =7R%W+^"JDTRR89U./,DV!,HT&47X6_2-N3;+H-6[UEA[5 MHW]&P3R&#<+XP)?I D,WWG&OK]N.6^=I$&5/W)JFP6R:_F6W?K%G'JQ0T ;H MVM90Z'+;>,5^L%]@?CFFS%?@O'X1.QVR_S(U]>K/(P M$&&'>+Z8'M5].LYF;[VW*'K[-W4.W^Y1T_$BVU+O2W^6&HX*W6RP@9$1.YYK M5/]@G^B?OX'AW>GQ=)ED<'_"G?&S*;1D&<^24^6\1!&J;D[LG<&5J^\(>.0S".-I)[F,*1D$8I<%\'GJT>9* MBEO*7=LTHI_ROB:[+0&DJU!&W5GY^,=9Y:%P3SU:^LLC8-LD;U.X,LC M)XJ")-EOQPOL",/;3RTTS+U#FO6Q'3NE?VSZ3C_%L]-)5DI6I(.&*SQL;BC> M<:-U&_V+Y>,W6X]9;8]0.V)=)H#PU+/T=!X&,PA\(&];?IK%P6)AB=MQ*)DM M($T62-R:+DDR,-H,B?,]*$D:!1F,/?;X3%=X#S(TIF01+(#%85H=-/5V#IN! MH#",H$YHL 0%GYO1YR[^=.Y#!.'%C[?3<0 M_>#/'<=%O]D?.0[=>TV\.\>*J;6]6<7S*22DNWX_GZB" M8S1>8JV -1S/IB,WI?8O1C;V!G,IC9&5_5LR"B=;7 #?5U*:_@4W&*ZT+_\/ M4$L#!!0 ( (^&>U@%><5Z!@< ),5 9 >&PO=V]R:W-H965T1*?53NT^;:P-NLD[+0A2JM MKDIBU/)\;H";SJOH37WYU[J#+7%IU5>6_Z85;GT^2"5FHI=SF[D.U^T'M M]0E17E;EMOY/=LU>+B8DVUI7%7MF0%#HLGG*V[T=>@P).\+@[QG\&G=S4(WR MK73RXLQ4.V)P-TC#'[6J-3> TR4ZY:,SL*J!SUW\6&95H8B3M\J>S1Q(1/HL MVW._:;C](]S<)^^JTJTM^:Y^>$2> MZ/03M3SQ#_5KN(-Q;LR(5W8C,W4^@9"WRMRHR<6WW_"(O7X$6]!A"QZ3_B2V M1[G'L7'ND;Y8\LM:$7C=5*4JG275DNAF>:X@HU7[UFP&"G' <*>DL42A2PDX M1!5S93JG$%DN\(=/)/!+Y,HAM>TK\NTWB<_$Z__L^3O : +K/HIVO493(X$$ MA?0KR;2L'-27^1^0\\15][0[Z?A>$,XH8S[UA>@1(YJ&"0T30=ZI6YU5W=(T M#GPJHO@@89HF,?7C](1\*K4#?!^==&# #EE,HR"E0K".Q*E( Z#Z S4%',Q2 MRM.H(\5P7$C3(")OMD%$ M3-,4!;,>,:4Q0DC#CH9!^^1]]'JZ4@A@: (65R%^4703-IJ M#ZUTT"^.*(O9\/0I3P(:1)"5XS:;^D%"4S\=C;2GY^ _9(6AU#J>-"CB12HXE =+B'U(,$RG>LZW]HJGJP:ZA>V$&V_2@=Y?A(?T=+TX\?G'F/D M9?=LHJNV-24E#,Y@L9:Q,0?QO22!G4GS:,.JEKK0L 532\/V:>C%_ 2V3/W0 MPZ1]23Y +Y<&*B(:::%N8&[>%)B):/D,P@N \\ M%O?(V"+J^*[UK0<+"RKJI56N3AU@/V0/BH58 MG$- NCL,#Y#]2 CMU%<>0YYJ TU[1B7?#_OS\P_I:2^M56Y$DZ.AL0^+3!IS M!QFXDV;1+P,/RQKH:B ^S2!,>=* M;C143_V7:O#4YJN+,AAL:T8D"C^B/$Z.UOKW$,IFR 9=EZ7!4:Y?AREG!YOZ M+9R):*1/42Z@ZXN#OFD4TR#T[\=/SV##(+HVZ'',+'"1^KS530@=U ]I$(N> M7@)&TQ"^*AR4#SW/U3X\#UX+$ +K>9'3V!^ZT> '\FFU/-W:@8P@Y33HF:]U MW]C8 SV>QSU*"--V'(X[[#E/3(+1XJ/O]=)I"+$?)^SD'BUB5+ 13ST[[_OS M_=>N'T\]WS]6"DX??A;AV)H$ ?S%]V@B3B"!8O(3!MA]3SH,P,Q7:#1 MA"TKOFV\-74YVDT;3/1^X">6] M8%Y$"IWGM6[@ UD/..I1#M%R4#*OW!JIS7?96L)H)TL8&R!'-'[M8OG4#2:R M +G>T8_4!O#Q8WGJA1U2MY:.[."%S-4*AA28+^N#%"5Z2;8E5(T%;:87HZLM M2"ZJ+=YIS)7;*56BZ8+]6""$1\8N:&:]B[)"F55]'8AS"@AJ[LPZ:G?C>-E< MM!VV-]>5[Z0!E!9JVQ)88<8*)TV%:U]X =:75>7: M%SR@NX>]^!M02P,$% @ CX9[6!<7W*MA! 7 P !D !X;"]W;W)K M&ULO5=M;]LV$/XKA%H4#2#8>O%K8AMHT@P;D Y& MLRW81UHZVT0H4B,I.]FOWQTER\J2>%F+[8,E\G@OST/>G>C97IM[NP5P[*&0 MRLZ#K7/E>;]OLRT4W/9T"0I7UMH4W.'4;/JV-,!S;U3(?A)%HW[!A0H6,R]; MFL5,5TX*!4O#;%44W#Q>@M3[>1 '!\%7L=DZ$O07LY)OX!;LE% M _P@-GR'Y MR[2T_LGVM6X\#5A66:>+QA@1%$+5;_[0[$/'8!*]8I T!HG'70?R*#]SQQXYD8)M;&L!#RJ+3L)?VK), MO;_TNUC6/@8O^Z#J.+8/I;,#L(%A_>Q:/HX@3"08MP<,K[&Q&>]A$G M/?;39(DNKA>WOI1?''&A&69+LK*03Q/;8 MI5] VREU:T7<+,/68QW")B!Y M9>A%]LA>Z+S'?L%Q#9K[OH#V!WY$B5OL3^B%3 2.N0SLAHQ+R4KM0#G! MY=LP&"BU<32KT=#NADPT"+ ]A5X-UFML6A2UWBU=$E*+V([;76&I&:_ML!G; MRCPVR@6X+?&D@XW2"\]WK25V7XI;-U_Q)V(4JN[I=7N5G+SB$;CG^_,\$W"G MSML(W_O^';BI6P?#P@=_JE3\AW5J O1(V,_'O%H;72!.W'Q5$3'\3!G>;)-S M1JP0?Y-45RC44N2>X1T^#8IZ[,;A+CW)M$/ ]RR-PM$X">-TV!%.PB09A^D@ M93>8T^>O)W5K\S$>AL,X/>L(XG"8)F=O9?)2;=09)I0_J1R0#GX7_G96T*WY MKF&+A!@.1^$(=_4@0GZ(=Q+'[$9CS7IC:3@93SI")#,8A.-1\LVI>??6IO.M#/Y-KK[4' ] M\>#&Z32,AJ.N*)E&X3":LJ6L[#_7ZPFRG51_0Y,])AF>R.180EC4-%VV3?/0 M]CH=KU+P "83UN=;4P:*^MT.K&MK;6.X+?N?&5X#9^'LM?1TJY>K+7RMM MK\Z?ZAOC4;V^=W_A9B-PDR6LT33JC8("/ @ 4P8 !D !X M;"]W;W)K&ULI57;3ALQ$/V5T5+Q5&4WNX&F(8E$ MH*A]0*+0R[.SGF0M?%ELA\#?=^R]--"05NI+[+'/.3ZS]DRF6V/O787HX4E) M[69)Y7T]25-75JB8&Y@:->VLC%7,4VC7J:LM,AY)2J9YEIVFB@F=S*=Q[<;. MIV;CI=!X8\%ME&+V>8'2;&?),.D6;L6Z\F$AG4]KML8[]-_K&TM1VJMPH5 [ M83187,V2\^%D,0KX"/@A<.MVYA R61IS'X(O?)9DP1!*+'U08#0\X@5*&83( MQD.KF?1'!N+NO%._BKE3+DOF\,+(GX+[:I:,$^"X8AOI;\WV,[;YG 2]TD@7 M?V';8(=% N7&>:-:,CE00CVJ_PPYAG+U!R%M"'GTW!T67E\RS^=2:+=B M)K4PB:E&-ID3.ES*G;>T*XCGYY?B47#4W$U33W)A,2U;ZJ*AYF]0ASE<&^TK M!Y\T1_Y2("4?O9F\,[/(#RI>8CF 8O@>\BPO#N@5?7)%U"O^EMQ@7W8-=[2? M&XIAXFI6XBRAU^[0/F(R/SX:GF9G!YR->F>C0^J'/_MAZK 80$^'+]JC%0IX MO\*QE,PB!WKS%Y(Y!^=0&J4HI-=4W@/3G,J)(U7W4B)0=BNT@=!L4Z$#LK*" MAPVS) YF!;Y"HK@:8PW!,S+K ,.M ]T9JB7!NGN+^C3)88L6@3E2E%3[;@+' M1^,\*\[^>XS'Q".NA'4>OK9.N_UWD VR\01?Q>G+<-2%^UY9NE/H"NTZMC-'U[O1OJGY?K7OF.=-H_@- M;]KM-;-KH1U(7!$U&WPX2< V+:P)O*ECVU@:3TTH3BOJ^F@#@/97QO@N" ?T M_R/S7U!+ P04 " "/AGM8O%RQKRD, !X*@ &0 'AL+W=O9L, M[I98UQV?Z25,W+&R=@Z&I9X?=1!,MX^*0C$7 M< 2-1K7$5JT3\5&)W^GBD$4A9R(0T4?D1>,Q(RLO>M@QG1!YNQ#*CV?M)B_T MBSTD0*O-I=X[_N:K4 7??D1%.:HH/R9]5Q4_+B24A^P60>R7E6:GS7J3U]=L ME;?LHND-'5J:;O5W.@!4F[S"]P[TK7!G6=V55=M?8T=C1,WVI:_:FQ*8G.B]65O([ MW7;L)+]F.8"E9V5H_#2_QJ9LTYNVSR&_:S"=Z0]%U;=(9E9!M[K5;(G9 MG5ZP\VN[Q[#L=5M!2,N6S:4V-2GHE*:CC2JW_693E5!YTSA3.+6QT[1L. 3- M*NNY:G1),D_R50ZT9#T2P+"JJ9=/(6;-"N2%@!(D[N;O='V]L8TER76DD^ G584C3L'P#W33CA)MRH-UN2& MCN 4F?ERU&8:U5LUMOXG7(*_\WJIR3\.FMR>PFYEVY'V5V6WPHH2D08SE,T"9NV\P#>Z: SB(:\J5C?UTT6)D8XM=0VC M.07R!3 6XLB(B"_]84/Q9=U>XAPWPIU6+!K0226F*83/8M&YSZTNGM*Y*&-L& M"H'#UJ@66NO.X18R?X.CM#.]1P5G-K!.T\NRF(R)V.H(B_+.SG"Y0D&-5,!< M!-.Y+O(>IO+//^3>HKRXT,9IM WC>G%D-75)X> 1UG/)H$WKK+^ *V"@#O(G M(;76"Y=3+M[(ZM/=I8$5::.+DK+0+$NR(1TTB+[]Q_S_7>?&E7B& JW7YXC? M;9$>)_WL,LQF#J M#68)SY3B*@Z\P3#A,@NY3"3]2 ,NPI"+*$+I78T*X7ESG*"X@*A4>&("B%$\$VH< M@CE#E?(TG4XK>0"MI)J45"'6)#S$]J]V "]/@RR )/U)H7F'[N"\[[:M!)57VV(U5453;<5!,[G[ M]G$2(;W#'0]U^?#@4340DI#<6QRAK8K80*<:CV%<"W4*0H22' MU#$XVN8*FE]#;E:DVT;0B"1AS-,;.Z94,-+8MUG(XQAG@!I :"1VAU-OJGPX ML_ZC+S<4KW^QOX!=,P2OK[X(>)0 H6,U,W8HL7,J9V-QG.&H-PR4IH+'(K0P M8,DFY2.J._J8I:%VVG<7S!2I^YH%-@DB__P2Y4DFY/,.Q+)$I+4WC[J+8,%5 MACXB\0^DT"2%X:R1A+LCZX!73;.X*D%09G:"[>+9@I B'%[T-89G8PKJ9#X/ M>"'F:^$A:" #.635R!EO!A1B-4DD5](7J2*>89]$Q/.9,L%@$OD;D>-2+/=C M+:3N)<-4!,A+MR&PX:%EY*'_;;Q',H#YXL$J-ZSQ)32 $9&'<2:^V*Z[_O\( MO9J4?0"](LB.P29"/WZHYH$#!!1"A_@%6$JL-8/R0R$)Y \ ]+= M2;* *DBC1$V["E=KD<73$-1 G571E,.H)8 '(2=L1U8D,D.]SNZ@6*A+(#C" M8X49CHS#Q+Y82LS$0S_D/OH4X>4:NK HIEH6W8]@@:K&E/C*DQT#5Q*/3A)U M1,L[VU_:?L.S!AR"90+6>"C!BC)T7\F!=WSE@1<\D833SWT@:11.D_>)C@7R M'@P+MDP3"K$YQXHR;.31;,)LB6@2H8]Z^Q&!H4P///<)ZH:!V9_/L*1"1P#. M^PB,*H,G%9&JQR!4C_4_(J"/LD>F99E%:A'_;U@9U6X@ I#J'\++J#]-8)+H M,6F90,.&3)?9EZ9EP$!T%SX&/1XK$X_ RL 7 5,1I^LTHN=O$M<*;5(2V)\7,V("%W-.WD4QY3*X8S" (82U'"4CP?2,C03 MX#TJFQ\;Y4'%T=R.(94K<3]2!FNIC!Y!SYX:HOO! =3LZ3591P9S-6)ZJ)OZ MLV*B8QF:IW@G2@8*0$0ONZ=1;"\TYZD)>BB5/@(K"V!:*>7LY#='D."A>][] M %:&[DD0<9\SWUM866 ?7% '_ E6I@@B88J9/8&9]C&_G#70Z(M#A%7B^RXD M4D]]\6SWA.B/X@%L^^58F65=]. [4>G?P[J(;^*\@;*=^81LC@>@4M3NU?PZ M_P\JPU(C=O/-JBP 94L*Z*N\??;HP/O['15J>]\^&[-0?.-K 0^RD!KT-'Z& MG40-DIAB:_;>?VS&Z'42[.V]I4 .9TA-%<;LU[JD(G[6V==_8[,#R\$Y7'F M'$4\ D9+4(D;AK2MA_?:?ZJK@ 0W9-]"_G3Z].2WUZ- F5%O/[E'2GH;I&YS MIO?F;!KUF-X='AX4(Q][+T0?T[>[^_0VU:@E>7=VZOORK\YZXKOKK38%O8H> M/GGP^S"SPP9A\O7D3_'UK4HU]?A1R A&6^OY< 3KHW8!#7U'T7NZF%[%?8ZF M.^TD(831=[U 8OW3"?VZ6#P_],SECIRF*5\I#T)_;LAS%)@"Q#KPU]"(S MHB8JN"/+:0O4,N^)/%%@M$E9]I>SS)['WMH1#(.W?7=VY'T-"%\N[3>/+;/M MH_LP@@T2M$6/M#RVU4BB2M)VTE_?H>2'$CO&;K'H(98XG/=\ M,YH,-]H\V26 (\]56=M1L'2NN1P,;+Z$2MD+W4"--W-M*N7P:!8#VQA0LU:H M*@>RZRHH+:%KHF!^2BX#B\GD>=O&7XO8&-[[\1',M7ZR1^^ MSD8!\PY!";GS&A0^UG #9>D5H1M_;W4&>Y->L/^^T_ZEC1UCF2H+-[K\HYBY MY2B0 9G!7*U*]Z WO\(VGMCKRW5IVU^RZ7CC-"#YRCI=;871@ZJHNZ=ZWN:A M)R#9.P)\*\!;OSM#K9>WRJGQT.@-,9X;M?F7-M16&ITK:E^41V?PMD Y-[[1 MUA$]Q_RNH5Z!):J>D0748%39OJL96BVL,\JGC\ SPL&"'0X<6O=PR#[R0> M1\3H%U6ZH@>H$).)YG@O533.,)Z8D6]M<79T02.);D=9C\*3U%./"HU5PB)P M&6$&9;^@@J91AB:S'\;.?T7R*T3W#IS\\AU]=P[M[Z /8V^A0,/X%6Q#Q$B& M0(C)O=%SL/Y+C=;GT*L&EC+$OXSW2YE@-=+L1.%#FB'J9)R\@D)*$QZ3VP)A MB%UF_5687G5V?*A',R63C*;QH2)9YB' R;?Y'&&#C5^[H]@EXBN1R1$]S005 MDI'K2AM7_-.U 4X/Q+BJ%\6TQ)%G+?32%:?8FMFA-#%J3E./\S58/R8,E*V: MXR$8BPB[]!A*(D;<8:M,5A9'L+6X>*QQH6HJ'\F[(S5.)64G0A(9MF_"?-76 M1;M>X79'<@.SPI%2VU.Z(B:Q+TZ#/.17.%2K9N7 [WM-4V(_4F+UW&V4@5VO M'BL5,L6>/FXVP;'70T8FJGXB^5*9Q2GA"/&7B&-/?:^+]/3<"O&2H>;]V?3=@>GFW8/ MG&J'6V7[NL0U'HQGP/NYUFYW\ ;V_QB,_P502P,$% @ CX9[6(,A,OH8 M"P X", !D !X;"]W;W)K&ULS1II;]PV]J\0 M4V_7!A19TIS.8WJY>FI29>BX"94*U'"F[G2!;?PJ!>G M9J4%SPBHR$^3*)J<%ER6@_/7=':CSU^KRN:R%#>:F:HHN%Z_%;EZ?#.(!_7! M1[E86CPX/7^]X@MQ*^SGU8V&I],&2R8+41JI2J;%_,W@(G[Y=H3WZ<(?4CR: MSM\,);E3ZAX?WF=O!A$R)'*16L3 X>-!7(H\1T3 QA>/<]"01,#NWS7V7TAV MD.6.&W&I\C]E9I=O!K,!R\2<5[G]J![_(;P\8\27JMS0_]FCNYN,!RRMC%6% M!P8."EFZ3_[5ZZ$#,(OV "0>("&^'2'B\AVW_/RU5H],XVW AG^0J 0-S,D2 MC7)K-;R5 &?/;ZU*[U^@7!E+50&V-AS5]?K4 G:\-?5H* M=@D'O%RS)3?,PO-OF*\S-@[J2'XE&X.M2BJ4FA"]Y)=>1AVN^1:L/=E*DJ,478#A-CQ M#<2GT!K8)A%.FON&'C[-^9D2W%PLQ;?JTVM&H6AJASY7)6+ M%^@KJ-Y&7ZA VR(,V6>('DU'"![@7T9T[B.3"\U+"XJ10)FG2Y;R7)09UVPM MN :9#1%CWJ@-.&B(P$L#N!1;53H%D04Z!FK&(( )224K M#3IGX!R/2PD\(6*OAX*OV1WP\57H5*(?2L=8FBN#RH!R< _UQR%0CB<2$8QD M1> 1>J!1A%:#_Y#FG$O-'GA>"=0CZ<+3Y(]<$R%AK(3L#50]9L2)MQV%BCC@ M[&W.(4QNTZ7*T2B$Y 5R1 RJ3.3.\RLC'!_<0"'SFBF5MP:^L/PN%R O!%+( MKKZNP"_AY8/*P>US::6WH8M(X&DIP6F $,_[E_J.X4/(-)I'1W.*%S4-\/0" MP6J#-6YB=E(#17 *%RTHBY762;826JJ,Z$/]=6)OHD0)6KH*S0LEWUA !PH+ M>S%"*MND"S"U9?I!4WN)BV2(GKF0M@+^H#+:)>@8TPV:W"4E,HVCIZ6Y?S'7 MZ.C (T!8IA$]1J#=I:>.BW95A,>?PUM "FV.J?2:K:7((7M6D.K/?F/H9XP;@D'^XD4%%:A%*?\M3+^,HAN6AC)E)WTA MJQQ41SKVY7K%UP7R$("@:5YE;5WV0ARH[K7H3^3V ]4/97C"Y:RRH*6,'4VC M89#,S@CF:#B;!,DD:EC H@1Y&+M"!CV=*.[ 8^J^CD#@CX0,@@$*V/-U0.?@ M5$YREUT7 IN'G%[Q#+IAR"G83#R(6JFF=@F>ILXFJ+,45*5RF7%G:_@@M5+O M4L(]X:QH))@+&@P"2BWZZ_S;! )=&>-]L-1LEX2@! M1*-I&(^["#.)@0:"N@P)]")XG81#O%5CO*A'OGUIII?_:4Y#HETM[U4RMC0_ M4+-_U>>?M3O], 07WB^_%^$F_$>!(SQ&2W-CL=!B@=[T%*XK7[*;@TL8!#48 MLH)@K<_>PY&$83YM3GQ#S6ZH[_N-G/)?SBG_H)QX')^PZ[:KP(QY)Q:R)#;! MEWRC$L?!%+K"&NT1BX?A^*QY_M6W+/$D&,;M,5R:)%LB9.QX%B1#(-S<2\*X MO?>+ZT=$=@H91^)P_6G::_WY/C"?4(^;HI7T%=*#.$I#%/8'6&GK [%OAYP.'HMR!P>,2& M8TPWOF'[G9N,?V&_YNH.G.Z6UC[0:=%@ 5>VM(2=22I$YD>DVH-[-)W,T-+L M5G106ZZ$40$:G#;#&I?S.QUQ0-WK=EG9)GQ$UG?UK[ZEF^!,.Y%%:1P@6D=Q M=8RJ<@>F*IM69*-)2)4!0VJ1<]_&5Z67PW3Z"JXA@A:^9I)@1]"^SB;3O1Y( MO&]/"!TVH*&%?F=;'^WLL2E5NYIP Y:K*=1>H:VV,/7=L+9+W+.\S@*HGY_4XC[ M[]7E)\JZSTHAG=B)1L&XTZO R32(.[%P*TH)?7!'D;_A&O$3;C#:8>RRF]0; MANH9E7)TLQ_%C27D>,BATBS]5H%6D[05D0W.G=/D5N?NV"M:]BC36]RYWLF2UZ,Z5!3Z M[@H;#$S)6*P[9[[&D0,3?[THG6M5D AMWU'/^NZ"7S5DNYHW5PY M&JY(:?1C4R]#L;HB.;>Q^B&&7$A>B9:I])?>E M$*>W+E1=FNT2QLH7=.**LC-"65&5 XCGLKR#S^'.$3DY"\:@+3P<)D$R&?=7 M D3?B%T4#LI)\M"BKI7HDUMS[G:">EW-=8EY8X^:'$BU\IG0N\7?39=,6A55 M[A84JT5T?C) G.DK%?R S'P=ED MA!HR3^V+#D[;^W8UG0[2?5WA- F=LV]&L9^;P)26[+(>&;_6]IZ.VFSSD M.^+G*%D\6[N-3K9"8:^"/K6I@ANC4LF;LMI5#)Q :;IK0A@, ^"CGK[B83 ] MFWZ?OI+_ WTUZ>UWR!-7]19X^SM!MWBD=>(GW")W!:;4WFQSZ^\;D<3!KQ;; M+]'\5CJ@9+6#"8P9@2=;92/E9DG^WJ\'3D*Y8Q'M2FTAA(7QP&PFR[9^]/!U MOJ%)>9Y6+HPVC-=OO)[^5@@S[36(AZ3C&L!Y+XJ;U>.+_[+BQ([KLRV5,)R_B ZU3PH^$H#H9G(Y_\)F?!9#K[ MK[;1X:YO]4\[O[HH!$0 _K8$+5&5UOT HSEM?KYRX7ZUT5YWOWWY $$72/+ MQ1Q HW Z'KA@KQ^L6M%O..Z4M:J@/Y>"@XGP KR?*V7K!R30_*CG_#]02P,$ M% @ CX9[6/9T]E[2 @ 4 8 !D !X;"]W;W)K&ULI97;3N,P$(9?91005U73I*7M0EN)PJ+E @G!'J[=9-)8^)"U'4+? MGK&3AB)!M=+>-#[,?/XG]?Q9--H\VQ+1P:L4RBZCTKGJ(HYM5J)D=J@K5+13 M:".9HZG9QK8RR/*0)$6N+C0\!OCHT] M&(.O9*/ULY_CO?TVU [U;)A M%J^U^,-S5RZC>00Y%JP6[E$W/["KY]SS,BUL^(6FC4U'$62U=5IVR:1 I1X@]D0QLD TE$Z/L(;]V6. V_\?V6VD,GG$-\?%[9B&2XC:@"+Y@6C MU=E),AU='I$XZ25.CM'_5>)Q2#(;PB>@P[5*,&6!&01=%&@P!Z>!"0$H*Z%W MB!:X@FLF.+6\XFP MT(;GM. KKXV+-<#<"52R$XR!7>6@#D150X_:7G-2N9] M(TS>#V,YW5YN73AQLR,"-SE4S#B.;;*/HGZBBG+(Z#H9OJE#Y[:0JC:V9E0 MR6U*GI6M""TKIG;4$H[\RK; C%?,<;5]+^GL9)XFL\L/7 MUY6$9&D?N!4SJ M6KE.>,?M\BS@*]F@1:!WXL^U^](:9N%T-DL&TV0:JCB=II/![-M\'PD[9(;R M?6, 76N4&S3]U0XI-$@'Y'"VPN!18C?\[#[%!UTNT6R#EUDJB52W#=^O]G9Y MU;K$>WCKM??,;#FI%UA0ZF@X.X_ M/[53IRN@F=LM",'"L.2+!^-#Z#]0FNW MG_@#^H_(Z@U02P,$% @ CX9[6'LH7CLG!@ A@\ !D !X;"]W;W)K M&ULI5=;;]LV%/XK!R[0I]2WI&V0&Y"DZU9@Q;)V MW9YIZ=CB0HDJ2=GQ?OV^0\J2W+A&@;[8$L7S\3OWPZN-=8^^8 [T5)K*7X^* M$.J+R<1G!9?*CVW-%;XLK2M5P*M;37SM6.51J#23^73Z9E(J78UNKN+:@[NY MLDTPNN('1[XI2^6V=VSLYGHT&^T6/NE5$61AVCO'S(KT=3(<2&LR ("G]KOF=C M! @TOK:8H^Y($1P^[]#?1]VART)YOK?F'YV'XGIT/J*P=_-0F E@V3 MK(6Y2S#S[\#,YO315J'P]$N5<[X/, &GCMA\1^QN?A3Q'6=C.IV=T'PZ/SV" M=]HI>AKQ3G]6T01S=AA&\>Y#N2T?[R@OPJF>UO6JMJ2]E390/Q46\\Y!4M>KRJ] MU)FJ F6]&"&_-) 0(Y>/WVAJ=15Q@98QL0C6H:[,ENZ2- M"A"1#ZVX?_GB?#Y[>]G#A$(%4HZIM/C!6T5GKRE76T\?*DBS!Q_ ?%\7WRS^ M14'X5A?]3!K':*^K%2V=+6EIFBPT2@H)-*GV]WL8%GP !U-E(+7:$;@U!C8Q MO)8SENV>K'&.X07V9$,A*HL>>**/_"1TJ&9O255Y7.3&62K4FFG!7-%2/R57 MR+?<&J.<( \L,I_2EI7S]%YI1VME&O:@XL7&R"HN%SASEUGQ&#S,3R)@IIS; MBM:J3!:'3*9\0?RUT8"2>#GI_>$ A^6%X<%BK;;=BFM %O&#*LZ^7\G@%"Q% M>YY0KM_,XPOK MPBMXJD3)#(U+XE )'Q%Z@QP8TQ?4+4=?/M.OM[:18+F$<7?*$ MN*^=SJ"D=7$IV2L%Z,8V)H>W6O.TF8/& [T X=%J(54KG?SH5.67DBR=DEL) M,>RU#IR0''&+2FULP6$C<8 6^@B@6KF@,XT03UF6E*,2N=4X%MV0'H''.\UH MU>@<-0",#8(,(0R#:_0/2%.AV2F7%=L84;JJ&X VDOK@DR!C1O2VB?JB'>E2 M_\?).-@O+.Q"ZD[T9@LD3D4'>[ZUJ9YO7FQA/<1$M6R2+D#FSFQW!0P MC%JC!,G7,?WQG(/K'@\9,'FNB;$1-4RG<^^UWD6BCL#EO,9H4^-XF0YR*84M M- ROP!8E46(GUA%O&Y>QE)",G%(Z9C)@CQN&0;ZFVG9<0\VUX M#B+I@GX709K1*_JSL0'[8H+%:IM&MY:Z3\$IID.Q-(FC'Y+44I$3W!QP'Q*/ M0:W='=6UD][@)\0Z;LPULC=(9Y),V+V=H(%DA23:USV20LDCLJ4:'R1T^8V MKCIU.A;2GY*JER*=" ^MN$]5]DBW@%TSZYQ=6&E&N:3.8-,P%B/+9@&?P7;* M2&61R&A0F6*1;"/QJ$5/8=%#$=H1E(:.LIN(0#8DII7=48DJ[C*H%QMTX[9\ M#^K,<6:W:5GP]OH$8#,#&>"F&I:ZA40.)I5MG[""C>N)-/08OUWX)G[H ,?I M#]Q-8@))*]H[2(3:5)6HR-A)F4*7RG9MHJS2KHF M=:O=)?,VW:WZ[>F&^E&Y%68&V&T)T>GX[>L1YKQXZTLOP=;QIK6P 0-L?"QP M468G&_!]:5$"VAUCHQ 9QW@H 'D= 9 M >&PO=V]R:W-H965TD+,5Y=!>[0-'8$GEYG^>> M2U]NK/OF*Z6"N*]-X]]-JA#:MX>'OJA4+?W,MJK!FY5UM0SXZM:'OG5*EKRI M-H>+HZ/3PUKJ9G)UR<^^N*M+VP6C&_7%"=_5M73;:V7LYMUD/LD/ONIU%>C! MX=5E*]?J1H5_ME\2(%%)&%8$D2/RY4Q^4,20(:GQ/,B?]D;1Q^#E+_X-MARU+Z=4' M:VYU&:IWD_.)*-5*=B9\M9N_JV3/:Y)76./Y?[&):X]Q8M'Y8.NT&=]KW<2_ M\C[Y8;#A_.B)#8NT8<%ZQX-8R]]ED%>7SFZ$H]601A_85-X-Y71#0;D)#F\U M]H6K#[:N=8"7@Q>R*45AFZ";M6H*K?SE8< 1M/"P2.*NH[C%$^+F"_$9$BHO M_M:4JAP+.(1NO8*+K.#UXEF)OZMB)H[G4[$X6AP_(^^X-_B8Y1W_-P;/'K,X MRCMY7!X5S5O?RD*]FZ JO')W:G+UZT_STZ.+9[0]Z;4]>4[Z?QZ>Y\7-W\S$ MLR)';_]1*?K>RF8K*ND%'BJG2J&;8(6J6V.WM%#(M5,J;MGH4(E"N0 X$.I> M%1T5G9^*3:6+"D]:[90(E;/=NA*(K:J7RN7XGK)"K;-WNE0"B#,5LK;-6MA0 M856HH"=D415B9=-)([PTTI'B.$_BWQJZK&50M+&#;G8E9 N)]QH5K,Q6_/QZ M]AJ%9 PP82I:Y1C8FD*)I6TZKZ)3[B#4=CY9J?!2-6JE@7][7FD[5U2DD5T: MC:,AUXM@@X3SUP\/GY_.3O/I3[KAA((T"HK<0D5Q"R%N=#[0S<#I_#Q+@Y+C M#4XA&D8 QUW2KD-M.B&%T07@50GM?<=Q%7]VT'+^YLV16&XA465)G[R!6[Q8 MVSOE&H[Z*WK]ZT_GB\71!>](TOC1_.( VV40:R>1->58(]JI[@O3>22'< 2< M\%@?^!;.6QJ5[;()!Y6+^04UR<9T7"FHYO!92#2EF7AO0L5^H$.&>G&P&AL0 M2D6Y2=7J8:VZ#XJP2L@5'?>G1%ZY+>(P/Y]&%R1GQT+I%$473:QML3FJ&/U) M:_&M]I1T#T]')GNQZAPGMFA6'2@>+>Z5808M.U)#^=2AC<\!$1C-S;; MC"Q$M=36!YS8=D92\&D?+_SHZ.!13KT5-^H. ?FLH=RUDA!-:VX5)%S+[4Q\ M:ACZ^2D^+,9!08E06M,AHTJ;G_T2=YS],D4%^%9Q^S?;*>E!UI$!UNB2-SO2 MH5-QRVG<>G+R0UO7SGI/;@8\B)6S->N7BBYZ>U!ZV(IPT+Y=T@P#.^.2.CJ^ MX#H?Y>^&?(BXZD8:6$C\K.P,)!$:1V#-%8SD105W@??T">YAI -F!K J_W*! M0YAU9:S 7)JT RD:")48ZV59:K(LB:6UC5K;H F#1Q4A\6+3&]/WC BHG# . M.(AS4VE&O9G\/5)/R>)2X'4NV0B?\_,Q1H_*-D9"_5C%1J.I*F,84QGX7) & M_C2<*M_1BG1 3) K>J5WA3U2F592FRH*^)5;#KN0,HKU\0$KZ+B49@:=S S; M"E(?E42- <+M@Y;CP>#1RTC@8V?[G(4 !Z @G=R?%Z$#_F11V1E[<7C&KZV, MV>3L5AHX B+.9J]_R:)R>7%+&"$7^"L1=$\*.O6]XY@^51J @K^*8*E5(LZG M$0D^[C(VG?8@I5O)4 MO:CQA"Q.$D3,).3@SP5000TIL,(@N+8P$J6Y5T,DU M*P+"5ZGO_;7ZJM:YX#.+0*YABK%24428Y&;'>IF@A5;5G< MP)2D;8;S)7*M&0*5;H:M\&S:]QBYC$?$)DCG4*V IFD8Q.LRPU!-R M2?:]XO;]!_)FRAZT0AE]/JZW&*&\>?_,?GON &>LH.]@_&@UNC%0/)2%14'4&ZD+X2*S R/XHD^:<"YT$3+K@%[\@'QW+?36/_:G:)5ZQ#UW#! MPJY2D27$NS:DL,;B(B38!,WH#$&6@0'1G79S=#<9+(_N1%KU(I&7"B@UP\_TL?#YL' >_\ M[,(_,N%$W(X*E12.>VI/F=--3JQF'P:AT' M8.R,( :7[8N,BG!D!DZ3)5*<,C;&VS9#%7O37HQA!-Q'@H@A\O:W:UG)&B[= M?4R226 M>T^B-!DX'U-UZ+J9N*U41L+"8NR^CN G49Z GDICZ;$YB+TIA$C]HR2Z"[RJ^26!J%]D@Y]O6\M MS>2&W'C'5RK/+QZY9BIV87B8@[3&*;K#X7 3P0P=(P;*CWGVJC-F!H.).G0M MUQ@#ZB!G.1TY,?"?=3V;\;_(8* M*5..8MZS"Y+$5,&A3NG.*/?JQ';2$E!\+LK<9C\.QSL:"]-EQI)F 702L^N. M/P89(]-(>(1-<%,:3U;I.BN;]JGA+&LQIH@(:9G/GT[3HXB#_LTD&1.@W:K_Q#BQR.E20MG2K Y[7 M,5^4L$I9'\<-F1M_VD.%GSSN M>7B9)5_O8KH:9JSV V:3D! Q]QT-3IH"0<$?,)KGX6"*OJB(I]36J8QGN]LR MKGJ/ MU&R'P+X#X8JD-OJ**Y^0Z4,!JLH$QC#($HZS(8IR\@21^,$)AD+=5N M2B4#%5W\1JI66%#,;%D>>/%MOX[2;4*\07QX>9YJZ8*#!!U>5B+?S=#U]^XV MYB6L^J'R!G0WV^1VK[*[_Y]\9OHXF9D^X(P]I#SV&\OAX.OP3;\H]KF(""K?EC MI8 _CA;@_&ULK59M<]LV#/XK.'5MOSB6 M+#OOMN^2M+MN=[WFTF[]S$B0Q M%JB05V_OU RC)L;,XN[U\L24*>/@ > !R MOC+VP56('M:UTFX15=XW%W'LL@IKX<:F04U?"F-KX>G5EK%K+(H\.-4J3I/D M)*Z%U-%R'M9N[7)N6J^DQEL+KJUK83?7J,QJ$4VB8>%.EI7GA7@Y;T2)7]'_ MUMQ:>HNW*+FL43MI-%@L%M'5Y.)ZQO;!X'>)*[?S#!S)O3$/_/)+OH@2)H0* M,\\(@OX>\0:58B"B\:/'C+9;LN/N\X#^$BHG9P:!\Q6KY[,SE)+E]A M.MLRG;V&_@^9OHZ5)F,XC ?OWIRER?02OE4(-Z9NA-Z,P%?6M&4%MQ_O;D;0 MM#:K2/LYH"X)':W4)0B=@\>LTD:9N!4R P=%-;4\"BL-*V#+"!+ M7J9N0JLV((I"*AEHK:0?]A(.!"O=6$E,724L5D;E:$%JHD69WL%:L;5RYI"+ M*0+J&+YH^%7HEN8.S#HY]3M1Z:B!V?#F^]$G\J+(W'O -=I,TE[T04 FE +3 MA#E"++YDWMP3.L&DHUV_G4014\+FLJX'KE;36+.6-+"1 M(O@I'9V<'X^2A'K@6S!^CDEBH3IDJF52G<0&$MP9D]-+%J\+$K'XB+K%P4QD MW4#)8(W-8ZWG1:J@4$$O*5G^;KV7B$1 E%:#*Y= M/8S&OL+N[PKC*^'YE9PS^D!:_2PH2IATBI^$ANV2?]66=+8,J9]P;DAI'0'N M*5S[SI /3JAYJA]Y^!0D8R+<"XF5^A? ?U5TBYDIM?R#+)^5\?R4:\B9 MP#5=2-R3XH8V">3W ADL:>% @=\[*)&ZD@3!N1$Y#1'I2+U\51C\W7\M-P_6 M3G6B-JT.2F*LENT;L1%4^;WV#2'M"UL$Y!?2%R;@?JYFR2P(_J5C*-ZY*I"4 MRG A8H$3F>[6L%W=WKFNNJO&DWEW82-QT5G R2[(-1F?'D=@NTM0]^)-$RX> M]\;3-28\5G1O1,L&]+TPQ@\OO,'V)KK\$U!+ P04 " "/AGM81J(KNAX$ M "T"@ &0 'AL+W=OY MG#D<#F>Q4_K>M "6/'9"FF706MN?AZ&I6^B8.5,]2-S9*-TQBU.]#4VO@35> MJ1-A$D7SL&-K:%.["_]S<:9^'12L,[D(8K231LEL&'^/PR<_)>X \..S,9$Q?)6JE[-[EN MED'D (& VCH+#'\/< 5".$,(X\O>9G!TZ12GXX/UGWWL&,N:&;A2XD_>V'89 ME %I8,,&86_5[A?8QY,[>[42QG_);I3-JH#4@[&JVRLC@H[+\<\>]SQ,%,KH MA$*R5T@\[M&11_F16;9::+4CVDFC-3?PH7IM!,>E.Y0[JW&7HYY=W0U]+P!9 MMDR0AIM:*#-H(&I#:F9:LL%3(UR.IX\T+D*+7IUN6.\]7(X>DA,>XH1\5M*V MAGR2#30O#80(]X@Y.6"^3-ZT^!'J,Y+&E"11DKYA+SURD'I[Z?_(P>@A>]V# MNUGGIF73Q!O[LB#][R_IWP?^VAR0^(U_KA;Q_5R91 M>O'=_G\!TV,.$

8EY\("DO!UITK214@]/'8L-"?C$1HT_! M\V<^N?SY'_I,^V5(0$B8@X2Y#6Q6PZHA\_F2VKHM/N?3YT.9')U5X?U5@;A@EJ2)=M$)8NC/P>'LVLE9:Q2D# ' M"7.M(P%H/8F\6<)'-B@ P21MS/;:F"FU<>O>+I PAPDS$7"/"3,1\("$$S2W'RON;E2# E*4%C M18>$.0UL<3B,R#G"15;G(6$^$A:H.D*2A[V7AZV4QWU]%T&R1U*NNLX5?RO]=O-JZ5^+&B0<(<^VA@,6:V8?J)"5NHA83X2%H!@DJATK?.Z-*6LEHE'>K),F8# M>H)6ZT%I/I06H&BRI@[\4UVIJ?^PF/$X8\3A!8O#;%!12L1H12%I#I3F0FD> ME.9#:0&*)LN.=K*CZLLPSG;U?>$=?Q:7ZYQ\+I*LB(I&AE':C)>W,1/#Z*TH MYK 7!ZVH/_'270@T:G0BA7CB4YD)I'I3F0VD!BB:+K_/6=;6Y M/F!7L/#;-LJ'750U;;0"H8Y[2SN\6=?.C$7_R@Y9IP>E^5!:\%9_R(KI_'9= M;;B/O;E4XT9+!FJ]MS3IH9LY='\)K=:#TGPH+4#19'5UCKVNMNSO6,)?B)L^ M1WF6)CPM65R[9''$TI!_()_2D+R[S14H/Z^%":"Z5Y4)H/I04H MFJS'SLW71]OYRO$1ZNE#:0Z4YD)I'I3FZV\^OPA0%PU*%CE42/+7IJ&C-CT%/U8;_7?T.-/G]AB0EE.9 :6Y+DT?IN6;IO=SJG5K0A[8O0-%DD71& M/%4;\=?;^*LZ,4']=RC-@=)<*,V#TGPH+4#19,UU_CM5^^_*Q 0UVZ$T!TIS M6YJ4;Q:F;<^M?F(ZL: /;5^ HLDBZ2QWJK;<[P4Q"GFA3DY0GQU* M_Q$.M'T!BB:+I7/*J=HI5XYD4%L<2G.@-+>E'1Y[RZ":J<_Z(CDN.)];,UN; M]T4"?:$=19-%TOG>5.U[W[!T^\C"]<;^.ON][JT+$2@=(<*,TUCAUY?6%;],@U.K6@#VU?@*(U(ID>3 :2\/RI MGABF^GW6-BV;R2SV:_>3SUS54Z[TUB_UCTXSA4R':6:TN6'Y4Y06).:/ JF= MS<59E3>3Q#0+9;:IIQQYR,HR2^JO:\Y6/*\*B.V/65;^6*@JV$_5<_E_4$L# M!!0 ( (^&>UC* MNW/P, +T+ 9 >&PO=V]R:W-H965TN&B_I 'QI?SOG.]YW8)V>R9?Q>% 2/50E%5.GD+*^=%V1%5!A M<,[CPNW9%5(O>"FDQJOX [DY_J&JYG;H>2D BH(HXC#B5E@ 3-6?B6Y+*9.XJ @[*U MD*QJG16#BM#FB1_:1/0<_/B(0] Z!/L.T1&'L'4(C="&F9$UQQ*G$\ZVB&MK MA:8')C?&6ZDA5+_&.\G5+E%^,KW*,K:FDM 5JEE),@("O48S+ J$:8XR/8 ? M:[+!)5 IT,LY2$Q*\4I9?;Z;HY?/7TU#B'/(SE'HGZ' "T(+H=F?NP<#=,(NJZ'!"X_@Z?R= M-5E\^Y2\,W0+0G*22^V)#<<(CL'??\O18TSF#KJ M@@O@&W#2%\_\V'MC2]")P';2%77IBH;0TT^J7*F*I*X<56>>"S&G8#Q M[[-=0)DC0KOSL<#T7A5_4[6LTL8'TH(HL$D;#/Z/TI).6O)'[\8JSZ8J.5 5 M>C91AW:C\:[=#M^+CN_%\*L +LF29%@"8DOUG33T;40'R[SU] M&KW_H(JW)$Z4L5.A[::LUTWXIRN0+5:_1H]\VZ&V&7JV4^WV&J$*^,KTAP*9 M8M$T$]UJUX->FJO@6L#M;]D3#Y.=("N8T]_ 5!+ P04 " "/AGM8UL:8 M8)T# #(% &0 'AL+W=O+04\D$M #1Z2GBJQMY"Z^S$]U6X@(2J Y%!:J[$0B94FZZ< M^RJ30*,B*.$^"8*AGU"6>I-1,3:5DY'(-69)0N3H#+I9C#WO/ S=L MOM!VP)^,,CJ'6]!WV52:GE^B1"R!5#&1(@GQV#O%)V=D: .*.^X9+-56&]FI MS(1XL)UOT=@++"/@$&H+0X?''@ISI46R"38,$I:N M_^G31HBM@,%K 6030 K>ZT0%RPNJZ60DQ1))>[=!LXUBJD6T(<=2NRJW6IJK MS,3IR6D8BCS5+)VC3' 6,E!H'TVE67:I5WLHXS35B*81@M\YR\QZ:/3A C1E M7'T<^=I0L$!^N$EWMDY'7DEW >$!ZN$]1 +2^S?<-\Q+^J2D3PJ\_BMX%=%I M2?3S,]$]]%EI9E8.(G2G(,XYNC0EH%ZB[4Z3J_TYI=G)&N62Q7"[$%*#O(Z_ M@TRNXTLPE7$M3Y4R9:P99WIU!?J(R&,/;,=E8@'\&;O'^'A\$G!^=^R;G_EG4I5R.&EYB[ ML?L!6@&5RD%S4-(<["XM2VNE=:*VE'98U"K[&')\M#-LN!VNLUM MU_IU)F@I\E%)_ZA#D=W8#>KWN*1Y_":5&Y2R,T%+E7%0N4_0HK:G:*MV)7_X2X-L :\5Z]UY8#8;8'7<N#!1WZ: UX TV0&6AV.VA M][!@(8?=G^9=.">IG)-TZ9PUX T*G%362=S6^:+ #0K8#=M6X*TORR[ML@:\ MOH!)Y9;$[9:7=-;^,>W&;BMR99.D2YNL 6]2Q95/$K=/OJYRDU+NP@Q)98:D M2S.L 7=\,_I;YU+VC.^*RCE+%>(0&ZC@X-#((M?'9NN.%EEQ5#436HND:"Z M1B#M#>9Z+(1^[MC3K_+PU@X5T)T908 .8T 9 M >&PO=V]R:W-H965TL%CLK@9X<-AP MSU=K66P8SBXW=,4>F/RRN36XQA/X44$'=\H%&*QXW&,:+I /)4T7?''F"&:YTSFZ)W').5Q M_EXU_?+@H7>_OK\<2G4T!7,859EO]IG)"YDQNA6I7.?(3Q=LT1$_-\>[K\5[ MK^0G!L!0=6/=E^30ES?$2/R3IA_1"'] Q"*CKA-Z)7Q;A%ME..XZ'W.XQZ(Z M.^D(]\\/MSK"@_/#N\X]/*/K++LK7)-B5)?UJ.39+_ .!=Q5EL;(8NJ_R#Y):RXACS-L&43Q\*J2YZ.I83,&G1D M)1,7VY:M9PV!LFJ"VK6@ME'0S^U)Z -*F>R2U\CI*R\DS-O#G*..)A,\49^6 MNI!)@].DHY$SPA.G)2Y04DU>[)R,-X;#D8MX8[9-+@S*0A4%)- MSG$MY]@HY\TV_FX<[,;POII"PCQ(F \)"R!A(1!,JXY)71V3-P]V8V3?PH"$ M>9/3<3>U)Y-QZS+K0R8-SDP: B75Y)S6]H'-?! :1XH MS0>E!:"T$(JF%T]CXV&SC^?GDB=4L@4**,_05QIO&9K3+/M9%-%U4OP2B?SG MB+&%:G/'LHBI&67%.@L*U/@#I7GXU(5SVS_A=+09M<9Z 'I4(11-%[\Q_;#9 M]>L4/WI)_')WI^Z@YF!%.YYUR=0J/KH4'FA:'Y06@-)"*)I>)HW[A\WVW^$" MX_&\?#)!U<*BYG*#'M@J48OHGFU$5CX;\SG=/_7%1=I95: &9D6;'DU*UL=)>T(Z MHY%_3J, ].!#*)K^!$YC)1*SE7B8/L(M7[!B)[K;/L8\0G.1;&CZ$V *,1]! M7[%!:1XHS0>E!:"T$(JFUUGC;1*SMPD^A9CS]:XJW#'P26L*.:>1?TZC /3@ M0RB:+FWC:!*SHWGGW\_1-Z5MIB:-3,GWLF:@7B8HS0.E^:"T )060M'T59YT.I-Q5-'T^CJ3Z@YN:7OK M#$GS06D!*"V$HNGUT+B@Q.R"PE_]0>U14)I7T?0Q-9ZVOR> VIZ@M!"*MJ^6 MX=';%@G+5N6+-#DJW8K]RP+UUOIEG>OR%976=@]?^/M7;AK,_@V@6YJM>)JC MF"T54O6V.H%L_U+-?D6*3?E.QZ.04B3EXII1-2\5#=3^I1#RL%(DJ%]MFOT' M4$L#!!0 ( (^&>U@@JX$"500 .,. 9 >&PO=V]R:W-H965TWGTXW0>3 M#,2J8V=M!TIU/W['#J30IFE[HA\*B6>>\3SSS!@/UDK?F131PGTFI!D&J;7Y M11B:.,6,F1.5HZ25A=(9L_2HEZ')-;+$.V4BC%JMTS!C7 :C@7]WHT<#55C! M)=YH,$66,;VY1*'6PZ =[%Y\X6+387 >0((+5@C[1:U_QVT^/8<7*V'\ M?UAO;5L!Q(6Q*MLZTPXR+LM/=K_EX2T.T=8A>N(012\X=+8.G;ESZ4K^ZW5M,K)SX[&<:P*:;E<0JX$CSD: M^!6NY0J-I>I: TPF\-FFJ($9@_3BPQ0MX\+\ DLF@$N8<2&HAF806MJ1PPWC M;?3+,GKT0O1V!#,E;6K@2B:8U !,F@&B;@- 2%Q4A$0[0BZC1L0IQB?0:7^$ MJ!5UX.OM%#[\Z#.MV]S_@*J!F;X=)JJ'.H.0,:'M3! ML5I*_N"$P*OJ [,0*V/K*ML,OJ^@-8D'@20$$Y7E3&X@420SJ2S@/>J8&P3# M*?J"QXR":K04UW]FR/\N5?MPJ#QK&,9-BO#4BG8X_1Q(N1[HJ&Y$JLLHZ.A+-)S$97E M=46U"GHOU+96%\PTZ8U3]%?U-B_LHXHS=SZ[,/%^2\4T$LD\\0S6ZJF1PO?J MZ4A@!WKJ57KJ-5:;3I$B*P2SU$#C3&G+'WS6CO[R[)CB K6FY0DU5^U)448X M]1'77?NLW^EUGI!PI)@'3)U53)V]QA3U-DU6ZGI'#74I?11QV<6L7"4& MUR0;#8)T ?.-7\N+.;79=B'AQFI._>8(-QOJX@S^>^% OCQ[1DNW<_Y$0(V[ M?F_7'0GL@.#SBN#SY@.J&UAOM MIHV[>6^NX=ZU($,:2^YZ9< ?N>4-H7I;W>#&_N(2/IJ7U[\9334NW8^I!;FV M3LZHQ71YI2H?K,K])6.N+%U9_->4;J&HG0&M+Y2RNP<7H+K7CKX#4$L#!!0 M ( (^&>UC\.FP=D08 )\F 9 >&PO=V]R:W-H965TN'BLUPQIL"7+,WE]62EU/IR.I71 MBF547O UR_6;!1<95?I6+*=R+1B-2Z4LG2+'\:893?+)[*I\=B]F5WRCTB1G M]P+(3991\?6&I?SE>@(GKP\>DN5*%0^FLZLU7;)'ICZM[X6^F]8H<9*Q7"8\ M!X(MKB?OX.4M085"*?%GPE[DSC4H7'GB_'-Q\R&^GCB%12QED2H@J/YY9K_%>BD;K-0W+U^1?^E=%X[\T0EN^7I7TFL5M>38 )BMJ";5#WPEU]9 MY9!;X$4\E>5_\%+).A,0;:3B6:6L+U-DA=A?%1"OTVTGIJ]BR*^R562 M+\&:ITF4, E^ G>)I,NE8$NJ6*RC]\4Q/Z-^XE+USV.N,/!2Z@8M#V!JB6T%W1U"+>2@D_2/4KXWT MK496!BX$SX N68(6,>KKRAN_8RGVH>=[R&]9VA4,D8]@X/9;&M26!OLLU>53 MLF(JZ7J21(!1D1VF1M^MB$-A9:LZ-V2C<<*8U70&.Y/1):TVUDW$;?GL JC$:5 M]5U'_[7&L+VQ4YTQ9 ':V<+AB0YVV0#"KD=PV/;(VN*I'AEN :UU_,B$6($U MZ9+@#M%?R8Y-G!;?/J7.P &AH +3S@'F2)]DFLZ=+*\31>6,D MM*;#AE) ?ZQT:24G1[L]$EK3;<-/H)V@',M\TV*%W5Z85?UB;PD[@X37KGEJ M'QCR ^WL9TZ_[!_K5HBC@SX26G-%;#@4$"-LWE0Y?9U= C0'&.&$[<=H?HJ G'V+'\YU.B+J2$'I0Y\.![S[8,!-LWZ3Y MHR[+@.8QF%.=\UA.\VC/9!J5IHR%UOPN;V@*L=.4O9$B778"0^P%V&M_1>R3 M)-!%T!T@XL10#V*G'G=,)LN\C%(QL39IR;;K>F:+EAWYZ!,%Y^ 9Q/ ,\HT\ M@_1\A4*ZY@3M'8<>03W]O#!L+VJG.T=],B:6Y0DH"E#,SVZ-:% W49])F_P-02P,$% @ CX9[6";7]:"2 P I0\ M !D !X;"]W;W)K&ULM5==CZ,V%/TK%JVJ7:D= ML,%\3)-(G4RKCM251AM-^[#J@P=N!C2 L[:3[/[[VL"0$ B349F7Q, ]AW,N MOO;U;,_%LTP!%/I6Y*6<6ZE2FVO;EG$*!9-7? .E?K+FHF!*7XHG6VX$L*0" M%;E-',>W"Y:5UF)6W;L7BQG?JCPKX5X@N2T*)K[?0,[WHE] Z@B_LY@+X_&R%AYY/S9 M7-PE<\LQBB"'6!D*IO]VL(0\-TQ:Q]>&U&K?:8#'XQ?V/RKSVLPCD[#D^3]9 MHM*Y%5HH@37;YNHSW_\)C2%J^&*>R^H7[>M8S[=0O)6*%PU8*RBRLOYGWYI$ M' &P=P9 &@"Y%. V +X8 M^^*&E<^Z>&*^U;:'G-9POX*;16"W<)W B7RL/\#NV$4_T*.$!)[YT+L!A5ZK MT!M5N$JY4$B!*'0];KC,AG76)/3H]1A'F)#0/]'9#Z1>Z+DD')9)6YET5.;Y MRF$*@;[/UV@#(N/)D'K:$^41G^ P"D_4]P.I$V <4#PLWV_E^Z/R'\I,08)6 MBBF0*.%YS@3Z\@F*1Q"#%3!*]]8*F(BLXSQHG0?OM @$4Z9@(K)."L(V!>'_ M6P3"?G'1D ;]1: ?2#P:N-@_,SVC5F$TQ2(0]5X?AKY.TND:T(\C7N"[@3.L M$CN'[=-Y917X7K 2WW;)?KZ<&W]VM0N)CY[2@AB*]B.I)3<[,UW_@MKJF&AG0Z .G[H MG$H="G2"B)[96?&A \#C+< -2UF1Z;JZI)Y&J=X\D29BZQH_]!28OE<]C78K M;T[#1&S=-!QZ$SS>G+Q>3_Y ETIHOWT:"*1^%&+G=.6WC\Y0Y@#[B8FGK)0H MA[5&.E>!SHBHSX3UA>*;ZECUR)4^I%7#5)^C09@ _7S-N7JY,">U]F2^^ ]0 M2P,$% @ CX9[6$H8TY@" P R H !D !X;"]W;W)K&ULK99?;YLP%,6_BL6FJ9/: .9ON@2I#=K6AZE5NG;/#KEI4 %G MMDFZ;S\;J)4 16G4EP3#/2?^'1OG3G:4/?,U@$ O>5;PJ;$68G-IFCQ90T[X MB&Z@D$]6E.5$R"%[,OF& 5E6HCPSL67Y9D[2PH@FU;T[%DUH*;*T@#N&>)GG MA/V[AHSNIH9MO-Z8IT]KH6Z8T61#GN >Q,/FCLF1J5V6:0X%3VF!&*RFQI5] M&8>JOBIX3&'']ZZ1(EE0^JP&-\NI8:D)00:)4 Y$?FUA!EFFC.0T_C:>AOY) M)=R_?G7_7K%+E@7A,*/9GW0IUE,C-- 25J3,Q)SN?D+#XRF_A&:\^D2[NM;U M#)247-"\$V^(<"- !\K\'DTU3J1'25)+0L!)=+F$"Z)8L,SE$AM]M9 M#(*D&?^*+M##?8S./G^=F$+^HM*92>-^7;OC-]QC2$;(L<\1MK#3(Y\=+\<] M\OAXN7TH-V5,.BNLL\*5G_/.K$9]P=16;K^5>IDO^88D,#7DV\J!;<&(OGRR M?>M;7TP?:19_D-E!A(Z.T!ERCWXSL@3YLG>"[(NPMO(K*W5\;2,G=%W?\]R) MN=V/IUN( ]MW GM\6!@/3NY$=%>CNX/H<\V*5HSFZ'9V)O4'B6[$&=NQB>UTCG)^C6F]T!= T.&Z\$+'M>P6?T^='3K8 M;N^!H',HJ#H+6[KN@"S49.%QR]OZ$^A#"GL.,+FIPW&;J5N( \OU[;"U^/'@ MW-Z[IN9>VZ!ZO%^$/:4%1QFLI+TU"F3(K.Z;ZH&@FZJ36% A^Y+J!ZHYT&ULK99M;YLP$,>_BL6FJ9/:\!A"N@0I M#YNV%]6B5MU>.W $JV!GMDG:;S_;$)HF!&W3WH!M[O[^W7'XF.P9?Q(Y@$3/ M94'%U,JEW-[:MDAR*+$8L"U0]21CO,123?G&%EL..#5.96%[CA/:)2;4BB=F M;<7C":MD02BL.!)566+^,H>"[:>6:QT6[LDFEWK!CB=;O($'D(_;%5P0I@KVM>VH[&%DDI(5C;.BJ DM+[CYR8/1PYN>,'!:QR\4X?@@H/?./@F MT)K,A+7$$L<3SO:(:VNEI@)8DK*)2J#>2 -GA M=0'7B*KJN4&S0KUB3!- JEA0RJJUS*I");[QN%J"Q*00'Y7MX\,27;W_.+&E M8M+*=M+L/Z_W]R[L[WKHCE&9"_29II"^%;!5,&U$WB&BN=>KN(1D@'SW&GF. MYW< +?[O!\=L$^T;/_\L$#[IR54L%W5+Z@[X56YS U%)?K "^ RO^\,X- MG4]=PY1[VA$-*)"J8$-#)6HL-CR ")PJB\0GKN=D% MS+#%#'LQVZ+:-1+? \)VP%_4:2O)\@1?1?MZ(QC[/HGK!TVEVH@:E&C7E1U$/UCZ49G-3F, M_,!Q3YC/S4XJO,:VCT[U$OC&-#N!S/;U<=BNMOUT9MK(R?I<]=FZ+;[*U$WZ M#O,-H0(5D"E)9S!2B>1UXZLGDFU-[U@SJ3J1&>;J7P&X-E#/,\;D8:(W:/\^ MXM]02P,$% @ CX9[6'=IT=)Z P &ULM5A=;YLP%/TK%INF3=H*QF!(ER!MJ:956J6JW[D!4.@Q33(YLS9*Y>>V M+9<;2)D\XSED>F3-1\VRCRPHVG.[N 6U)?\6NB>7:.LXA0R&?,, M"5C/K'?X?(X#DU!$?(UA)QMM9*0L.+\WGIWFL1F^PG]0R%>BUDP"7.>?(M7:C.S0@NM8,T>$G7#=Q^A$N0;O"5/ M9'%%NS*6.!9:/DC%TRI9,TCCK+RSQ^J':"1@[P\);I7@'IM J@12""V9%;(N MF&+15/ =$B9:HYE&\=L4V5I-G)EIO%5"C\8Z3T67V18RQ<4O]/("%(L3^0J] M05]N+]#+YZ^FMM*O,('VLH)[7\*Y?X"[@.49(O@U_36@+0 L L\VV$L3-Q/*QG;-O4T1/HN$$8 MNI,ZL,71JSEZ@QP_@93:W$)HCBCGPBSH/J(EBM]X/W4\CWKN <]NG!]HGHVX M%DV_IND/TFRLC8QG;RK"O:O"[S)P/#\(\ '3;ISG^\XD#/J9TIHI'61ZFS,! M2%^41'K+6-ZC[U>0+D#T>GT0ZU2OCP36DAW4LH.1EG%\,8#*6+P?+BI-ECX36EKVO+_!P M@7&,+[M% Z9T0@YWR9XXUZ.DL9NV.>Z+"SQ<77PS>^0Q?AR$.7EB1D)KB][7 M*9B.Y<=1JY2QT-JR]W4*'JP)CO)CT"FV/8=2>FC';ABAM.-&NW$B-,?Q*R;N MXDRB!-8ZSSD+M U$><(M.XKGQ2%QP94^..7?6_S-$ MOP%02P,$% @ CX9[6 EU8Q(6!@ !2H !D !X;"]W;W)K&ULS9IK;]LV%(;_"N$-0P8DL4C=L\1 8KE8@&8(&G3]4.R# M(M.V4$GT1#INA_WX4;(L61)-6\,9UJ*M+9GG(?4>\?)*O-VR_ M?42K0US3) M^-UH)<3Z9CSFT8JF(;]F:YK)7Q8L3T,A#_/EF*]S&L[+H#09$\-PQFD89Z/) M;7GN.9_S&O(Z90EG^*Y6-V- MO!&:TT6X2<0'MOV55A=D%[R();S\'VVKLL8(11LN6%H%RQ:D<;;[#+]60AP$ M8.=( *D"2#? .A)@5@'FN0%6%6"=&V!7 >6ECW?77@H7A"*(&,16-&AZ?KBE" _.#S<5X;/SPXE&#+/.G%GRS!.90Y]BL4+3\E:A M^25ZS-!SE<=+](&^T6Q#Y6?$EEG\%YVC^TS^2]DFDSE_B).$SB]1$/,H87R3 M4_3YO:P'/0J:\C]4.=\URE(WJAC6;O@ZC.C=2(Y;G.9O=#3YZ0?L&+^H\@4) M"R!A,R!8*[-6G5E+1Y]42>-R(*ZS)AB:AX(B.;9&G2X;R4RK,J6M9&BF(&'! M#N:4L&(F>YM@P_-MXGBR8[P=IJ%?DMB6XQO8J@NV)+9KB6VMQ/L.\%IV@'^C MKI8_5%U(6+"#V0>:76$#N\2R;+\CKZ*H:5J&BP\2T=+7J?5U3MS"GA&9[K%<-]2[=^.6)8KN_X:M7<6C57J]IO[.'^$3&]6DSOI)B/ M620G173QGG&NU$^+&*H?)"SP^K>8;WNVZ>..?OV"LIA#_",CI%_+YVOEJZ1; MY"Q%TI;D8;&N5XZ$6LY0#2%A@=^;/4P7.ZY#W(Z&_8(^<0GV;+6&V&A6U\8I M%:5]X[283.9QLA%RLJ%AGL794JFE'C=43%!:4-''1D4IX]H^$];9HN@JS93G&WD=1X9#D (N>J%BQ^?Z,G, 6+);X%TH,& MJPUJ)"M::]HU;<ILR]TX6*)WL,HW;4JE0'1RID??MCO;^_W[#5574Z8#U,2#T@+2M^:>JTP&4+7M M9#0^GYSP^;ZEZ9D+VR_+JBX9SF10'Y^X(QL3\H*JAW?D[^ 5!+ P04 M " "/AGM8>- $7=\$ !2'0 &0 'AL+W=OGG4D#B.^L[9DFV>YF)MUFFFWWH;,/,I9M30&Y MDHB3?[\2$# 8*[$++YB/>P_G7AWP09IL*?O.UQ@+\)@F&9\::R$V%Z;)XS5. M$3^G&YS)*TO*4B3D(5N9?,,P6A1):6)"R_+-%)',F$V*9HB]G2)$[J=&K;Q?.(S6:V%.F'.)ANTPO=8?-G<,7EDUB@+DN*,$YH!AI=3 MX[U]<>58*J&(^$KPEN_L U7*G-+OZN!F,34LQ0@G.!8* LF?!WR%DT0A21X_ M*E"COJ=*W-U_1O]0%"^+F2..KVCR+UF(]=0(#;# 2Y0GXC/=_H6K@CR%%].$ M%UNP+6.#R !QS@5-JV3)("59^8L>JT;L)-CN@018)<#7)CA5@E,46C(KRKI& M LTFC&X!4]$23>T4O2FR934D4\-X+YB\2F2>F-TQJ0@FGL[ )D&9 "A; /PC M)QLY5.513#,N6%YVG61@P^B*8<[!FVLL$$GX6_ .?+F_!F]^?3LQA>2DD,VX MNO]E>7]XX/[7.#X'CGT&H 6=GO2KUZ?#=KHI.U&W ];M@ 6>\V([[NIV_%&W MX]NM# 03QS%[P,;LMU]LW_J]K_"!P%IM M<.HV.#IT?1O.P)^,'=@N]";FPVYU/9%.%(00PJ". M;%%W:^JNEOJMDB:*XSS-$R3P0C[3LD$Q04J_?9Q+.&^'21C!,(PLMT.Y)S" M'O1#V,_8JQE[/]/LO['<_$,%2OK8>WND/"\,)2V[P[XG4$9%GNOUL_=K]KZ6 M_=6!UT,?67^/@RL)!%VJ^V%.8'E^:/<2'VB(JMP(=JQ4!H[58T#L36_K.?K-H* M=E>.T+=^2 >&5A@>4F[C&^P7C$-!^7U[]'0BUL(=/7(#H;6+;YR' M[8XI8JVO.;H5 Z&U6]%8&ONG/,UA$>_;%-^W+"L*@JZ(>R)=SX%1Y!X0<>-H M;+VEN2;2T9!Y7EB:^R>NADRO8BW>T4,W$%J[^L8EV<&8*A[41 V%UFY%8Z-L MK3TY7<7AOH.51M>W@^YGT(%(5VX.J+@Q/[;>_7Q:+DF,P3)G&1$YPV=@21[5 M#N]\Y&N5K;W'T<,Y$%K[T[ZQ5= :\^-^4+\U%%J[%8W?@EH3<[*R*]B67ATG M#/RN-^X+M"WU$/3K&N[,T.C]T5>\)G&"]6]D/<;1@S7&7 QL3!5TQM3MH!9K M*+1V*QJ+!?6S.R?K=G_RQG$=Q_.[WK@G$'K0\X)#NFTL$=1;HEN,.%[39 %N MT@VC#UA1?D'%6L2CAVX@M';]C:N"_I@J'M1B#876;D5CL:!^)NID%0?[*K;\ MW2F\JKS].!@&T:'/.]@8(J@W1+=H_DKCH KS&F$:"C96"T9C2'=1##876 M7A=H/)2CGYHZ>67 VI_PAZ[G=Y<%7@HK:9L["UYJM?$C8BN2<9#@IX:HP5F*D!>7U(JG@_4LEJ]C#K['U!+ P04 M" "/AGM86:TVB;<" ![!P &0 'AL+W=O*$H8+ 62355A\3(#RG=3QW?V MACNR*94QN%E:XPVL0-W72Z%G;H]2D J8))PA >NI<^U?S6/C;QU^$=C)P1@9 M)0^K[*4&>ZFSX"CB O)S%/IG*/""<(30_-_#@R-TPK[RH<4+ M/[SR8\5LM[%"?!#8J[),^K),CJ%G MZ+B>X2;> M,+3<7Y\EU2D+8UKIE"2',9DM=C20F7B7H1]='"B,WI0CN$P2<\RW(]SCGGM\ ME/L"=$%R8F_U&+OX3=;H(@@][Y#=B-\DB/PD.:#G#OI8!6)CV[O4]Z!AJKWG MO;5_0:YMXSRPS_3+TCX$?V':9^D6BPUA$E%8:TCO/-&5$VVK;R>*U[9;/G"E M>Z\=EOIU!&$<]/J:<[6?F 3]>YO] 5!+ P04 " "/AGM8C>BRX2 + !, MCP &0 'AL+W=O"_4F)7 MJQFI&[ )D&03I 3?;QUU9GI7&NV'"E3 .[[0MDD::7[\5!D'8V*J03II]06, MZZD"XQ.7>7'?O*;9G_F2L8+\B*,DO^TLBV)UW>OELR6+:=Y-5RSACSRG64P+ M?C=;]/)5QNB\;!1'/;7?'_5B&B:=R4VY["&;W*3K(@H3]I"1?!W'--OTHG;<%7\/%LA +>I.;%5VP1U;\OGK(^+W>3IF',4OR,$U(QIYO.W?*=3 8 MB ;E&M]"]IKOW2;BJ3REZ9_BCCV_[?3%B%C$9H4@*/_GA4U9% F)C^-[A79V M?8J&^[??=*-\\OS)/-&<3=/H/^&\6-YV+CMDSI[I.BJ^IJ\6JY[04'BS-,K+ MO\EKM6Z_0V;KO$CCJC$?01PFVW_IC^J%V&N@JD<:J%4#]=0&@ZK!X-0&%U6# MBU,;#*L&PX,&RL61!J.JP>BPP>61!N.JP?BPP?A(@\NJP>6IS^&J:G!UV&!X M;,/UW[9<_]0^E-W&/MS:1U\IY6US*X?;^WB3MPVN'&YQ\4A[D[=-KI3;O+=] M^Y;O?8T6='*3I:\D$^MS3]PH=Z"R/7_+AXG8UQ^+C#\:\G;%1 OS69H48;)F M<\(3)*-B%\S)9^*S'^$L):LL_3_?+_G^\\*#8<5W\^(S"6@F5GQA.?E%8P4- MH_Q7LJ 1"1/BAU$DB)M>P<NG-JK%8V[&H1\:B$)\/99D3/9FS>4M[^R?M M50G0XR_,[M51WUZ=>U4J&NRI2_I7GXC:5U7R^Z-&?OGGKRT#FY[#^/\-CC": MG+E;+[I$O2R9OF0T^CG,\=$8+G/#I MA@R44N@?$6RYH+%9MR*DV]<%M&N6QI M[I^P;:KG,VII'IR\70:2G7"PBZA!R0V.<(_\^&:^CAA)GXF=\,PI1 CEY ^/ MKTCL@L7Y_UH&>;]5+]I5<0QUG:_HC-UV^$%2SK(7UIG\ZQ_*J/_OMAT>.^P'GUGE_%@GIG/6EC32_LY-&B2F M(3$=B1GR;<0/3,3&:4L5Y"@L)&8C,0>)N4C,0V(^$@M 6"-5AKM4&4K?L7=Q MNDZD\=&6'%+SW.1 8MH6&Y68.&'T,ADJRL7%4!W>]%[V4^']BLI@/!@,^-K- M-0WD^$PD9B$Q&XDY2,Q%8AX2\Y%8 ,(:,3#:Q6(2+\AP*>61%$3$Q M5_E$]&T&M$6 U#LW D9M.V.__-7<&35DMSH2,Y"8B<0L)&8C,0>)N4C,0V(^ M$@M 6",FQKN8&$MCPHY7-,Q$-I HS7/RG&9O)UQIGK-"G("=MY^:;-W/Q$&X_% '35_'#C(/ETDYB$Q'XD%(*P1()>[ M +F4!H@?)F&\CLD?/A-G,UI/@$J%K$L/I%O-%JWGOZH MY.:)QK8S%E/Y&,Z-#*BF0S4#JIE0S8)J-E1SH)H+U3RHYD.U *4UTV.O!$V1 M?R#[."5WBS653F;DQKE''U!-@VHZ5#.@F@G5+*AF0S4'JKE0S8-J/E0+4%HS M2]0Z2]0/F=M4+"I>D)H&U72H9D U$ZI94,V&:@Y4-?I M-]OYB2@ B412B#^9^()J+L+CE6[(DD7S\O&]K^"U9@FTF!2J:5!-AVH&5#.A MF@75;*CF*.\K?U5%:3E*<*']>E#-AVH!2FO&25U\JLBK3[^LME^@7V2L+#S= MG5'E!R"GG66%5J-"-0VJZ5#-@&HF5+.@F@W5'*CF0C4/JOE0+4!IS9RIJU>5 M\<><9846JD(U#:KI4,V :B94LZ":#=4*EK6Q5Y<>MO M:4$C\L"R&4\5NF#DRS/Y\IJP+%^&*QXX!>.]%OP&N>._9]_78<;F9)K&*YIL M6G,'6@H+U32HID,U ZJ94,V":C9463TE?(X(5_9 M"\\(1K[D<9J'.=%83OG*VPN7/$0T*43&$(UNR$.6SEB>BV294CZVL-B0OXY< M;O->WO_9"0,MHX5J.E0SH)I9:-RH)H+U3RHYD.U *4U M4Z,N>E7E1:\\"<)T+J[M_+H,9TO"#S;R(EMO+]8>K_."/#&^,%Y%[$@UK+R# MLV,!6@T+U72H9D U\R>;>3 B<7GY[-;##&CM*U1SH)H+U3RHYD.U *4U8Z4N MD%6EM75OL?*559_?_):2+^55CABY2^;$IR&?X81OAR-BT=WW-9OSW&F-&&19 MX!2J:5!-AVH&5#-_LLD'8[)AM'5R:D$'8D,U!ZJY4,V#:CY4"U!:,V'JZEI5 M7EW[[D,?/G$1]W,R9^1KFM,L+%+RV+WK/G3MKE@X[7Z3?D(D[_#LE('6V$(U M':H94,V$:A94LZ&: ]503J#I@VC\B M:@T::"$N5-.@F@[5#*AF0C4+JME0S8%J+E3SH)I?:>]*V XNN!N@>FU&2%UB MJ\I+;-NF1D:8Y05Y6-*%C* NW1AFH.5'.A MF@?5?*@6H+1FNM1%N(,SKTG+<^*1S<1%WWX^09+;9R<'M,X6JNE0S8!J)E2S MH)H-U1RHYD(U#ZKY4"U :N,^9AKU0Z@1;9038-J.E0SH)H)U2RH9D,U M!ZJY4,V#:CY4"U!:,U[JLMV!O)[SXR=(T*I>J*9!-1VJ&5#-K#3Y! E:O0O5 M'*CF0C4/JOE0+4!IVW3IY4O&"HT6='(3LVS!IBR*PM)1E[%A=< MN+Y3.[UWR^^5ZZG2LEQ3KO6VY;9R[93+>W6WDYL573"?9HLPR4G$GOD0^MTQ M?XN75\9\NU.DJ]L./X1[2HLBC?T[1XNR,Z>$VS/\NG.?D; M4$L#!!0 ( (^&>UC9?/2/C , ,4, 9 >&PO=V]R:W-H965TXSGJNIM=6Z MN+)ME6PAH^I2%)#CF[60&=78E!M;%1)H6B5EW/8<)[(SRG)K-JGZEG(V$:7F M+(>E)*K,,BJ_W0 7^ZGE6@\=']EFJTV'/9L4= -WH#\72XDMNT5)60:Y8B(G M$M93Z]J]FKN>2:@B_F"P5P?/Q$A9"?'5-&[3J>481L AT0:"XM\.YL"Y04(> M_S2@5CNF23Q\?D#_K1*/8E94P5SP/UFJMU,KMD@*:UIR_5'L?X=&4&CP$L%5 M]4OV3:QCD:146F1-,C+(6%[_T_O&B(,$-SB3X#4)WE,3_";!KX36S"I9"ZKI M;"+%GD@3C6CFH?*FRD8U+#?3>*Y8(4DCQ-UJ.UNQPS@N<04U>+T!3QM4;#/M\MR"O7[V9V!K9&$P[:4:^J4?V MSHT,R27QW0OB.9[?DSY_>KK73;?1@]8(KS7"J_#\,WBW>2(R('>::C B+\@- MY31/L*O:3C1/R76:,F,/Y<3XQH4J)2BR^F::A5#8_U:*LE 7!.%XF;)\0SH. M?WAT^,L[9$!N<33U5Y][-=V@GZ[9W5>JH E,+=R^"N0.K-G//[F1\VN?ER\$ MUG'6;YWUA]!GGX1&8ZA2H!41:Y+V+[D^#VK@J (V!])NYKE^X,1..+%WA_KZ M J/(&45Q&]CA'K3<@T'N9R;ODOS[L#^6S?Y8/.Z//B6#PSQW-E\(K.-(V#H2 M_K_V2?B2SKX06,?9J'4V&EQK+1F&_D+@5$@\*64HH*$L) MW&,!I' QFG4J]!8DWK)2FENM/J'ZY,4]C/#2"HZFX#1L%(6AWT]\W!(?#Q)_ MAT3[.(U/!O-<]"D>QT>LGA#8(>8ZCZ6#,TCM0V7?>=N:],[0_M@YXO>]J"ZY M@[K&_5&W3H,)C"LT5X)U>B'P51="*A M)P[71AP<"; /:DQ3X+^G.:PQD3GU@=6P:-_ ( %4) 9 M >&PO=V]R:W-H965TS,=J"5]N-WG804VH ZJ2][2?QQ[_&YY_K: M[JVENM-+ $/N4RYTWUD:DYV[KHZ7D%+=DAD(G)E+E5*#7;5P=:: )H53RMW M\T(WI4PX4:\8FZBH)W/#F8")(CI/4ZH>!L#ENN_XSF;@ABV6Q@ZX42^C"YB" MN)6?:=,X$XM7BRY+KYD7=EZ#HES;61:.2.#E(GR3^\K';8<_'"/0U Y!$\= M.GL3M J^]!V\L8ID"F1IJP,IY M3 :4HYHX5-0M%0FY2!)F)46!;8:XU+D"368/MIM)C>.?E,+$@ M.[G\^IC+'U?(@(QQ-?VS*1\EW4XS77N,G.N,QM!W\)S0H%;@1._>^*'WL4G+ M5P+;4;93*]LYA!Y=2:W)7,F4),W;NBGZ$C(L(.V9MXI\[RSL=CH]=[4=V'.[ MH-WUOJS IC@.+O.O67PEL!U%PEJ1 M\/^JC_ UE7TEL!UEN[6RW1?6Q^&2Z#[;ZB?--=%@V%P4[M8-E8):%!>W)K', MA2D/\GJT?AM<%%?BD_$!OAG**_X1IGQP7%.U8)A-#G.$]%I=W,.JO,3+CI%9 M<0_.I,%;M6@N\=T#RAK@_%Q*L^G8!>J75/074$L#!!0 ( (^&>UB+Q*YY M-@0 'P9 9 >&PO=V]R:W-H965T7FRO=%MB8%%I=L0TIUYY'Q DMU MRE>^V'""EY53D?LH"&*_P+3TTEEU[8ZG,[:5.2W)'0=B6Q28?WM']![ MOO")KM927_#3V0:OR#V1GS=W7)WY#Y=PVO%BC6#I7%7Y3L M1*<--)4'QK[HD_?+N1?HB$A.,JDAL#H\D07)L" +EO]-EW(]]Q(/+,DCWN;R$]O]3FI"D<;+6"ZJ?[#;VTXB#V1;(5E1 M.ZL("EKNC_AK/1 =!SA^P0'5#NA''<+:(:R([B.K:-U@B=,99SO M;5"TXUJ M;"IOQ8:6.HWWDJN[5/G)]'TI<;FB#SD!6 @B!1B!!1/JB,NE&N1L6VQS+(EJ M%XQ+^B^N1O_-#9&8YN*M,O]\?P/>_/QVYDL5CT;UL[KO=_N^T0M]WY#L$H3P M J A0;WQ8^[H[Z[KT:A&0K4# 6J\,(7\#1M$XF]U]CLI9?9E=C@C,P]M8X$ MX4_$2W_Y"<;!KR9*CL!Z!,.&8&A#3V]I2249?5#K9@DZB;^N$G\!?N-,"-,( M[&'C"E;7A:!\Z* M70WE*%^NT/K$.T($OEK!J[OJ%3((@SB&AW7$9#E%ED2V:@):G^7I'ZP<9:S8 M$*F*WHH3HL2O<='9<8[.XCD4!FPE!@Q/JBS0*DV.)ND(K4^RU2/0^N0_O;K4 MN+VR$2?10$C9^S^57RL]8.2N!EEES-&)=836)][*%&C7*4YKT%"BC& X#@>Y MMH9T*N56\$"[XEE4[YB$JW?RO.(BUG1CGKQ.Y8\KM#[M5@#!TQ00="J!7*'U M2;8B")Y)!<&AO!F/T5 %V?L_D1]JM1)RIY604ZWD"JU/O-5*Z/6T$C(HH$F8 MH(-4VR,ZE7%G;\:NIFYQ1G,JOX$"EWA5:2F0L5)RG$GC%+;C'9WO52NP:7>R.?[ MK?[]B62;:K?\@4FEBZKFFN EX=I W7]D3#Z?Z WXYH-+^A]02P,$% @ MCX9[6&T' !]Q @ S08 !D !X;"]W;W)K&UL ME95O;YLP$,:_BL6FJ9.V B88Z A2VZA:I6VJVG5[[9 C6 7,;"?I]NEGFP1% MC9ML;X+_W//\[AQ\Y!LNGF0-H-!SVW1RZM5*]1>^+\L:6BK/>0^=WJFX:*G2 M4['T92^ +JRH;7PN\(K=K=Z+(^4HUK(,[@>2J;:GX?04-WTR]T-LM MW+-EK7&4FW@;\8+"1>V-D M*IES_F0FMXNI%YB$H(%2&0>J'VNXAJ8Q1CJ-7UM/;T0:X?YXYWYC:]>US*F$ M:][\9 M53[W40PNHZ*I1]WSS&;;UQ,:OY(VTOV@SQ)*)A\J55+S=BG4&+>N& M)WW>GL.> .-7!'@KP#;O 62SG%%%BUSP#1(F6KN9@2W5JG5RK#-_RH,2>I=I MG2IN.T6[)9LW@*B4H"3ZB"Y;+A3[0^VQ\0JQ@YBS&2C*&OD^]Y5.PECYY19X M-0#Q*\ 9E._1XBS&)'#3XI$6GZ(1%RT^H.$T2X+832,CC9RB)2X: M^2]:,M*24[3414L.:0G!R2NT=*2E1VG?:]"]M5(@7,ST@!GB29R2S W-1FAV M%'K#.J8 ?=']<8'V+M+E<-N_@7(EDQV\N%$41V'Z\@3\O>YD&OU7*I:LDZB! M2BN#\T37(X;F.4P4[VW#FG.EVY\=UOI[ \($Z/V*<[6;F!XX?L&*OU!+ P04 M " "/AGM8DRM20SX& "S0 &0 'AL+W=OD MG7;8CQ]UB&6E"F,7KV]BB^+[D)3>Z!/YA;E\R,1GN>)4%W>KEF2_Z>JP_K6Z&/NCO*/$IX M*J,L)8(OKCK7]D7@#')!4>-CQ!_DWG>2#^4^RS[G!V_F5QTK[Q&/>:AR!-,? M6S[C<9R3=#^^5-#.KLUO!W#/)9UG\*9JKU55GW"%SOF";6-UE M#P&O!E1T,,QB6?PD#V7=D=4AX4:J+*G$N@=)E):?[&MU(?8$FM,N<"J!\U30 M?T;0JP2]0P7]2M!_*A@^(QA4@L&A+0PKP?!0P:@2C X5C"O!N+B[Y>TH[J7+ M%)M>BNR!B+RVIN5?"D,4:GT+HS3W[GLE]-E(Z]3T3:I8NHSN8TZ8E%Q)\LKE MBD6Q_)6\)A_>N^35S[]>=I5N*A=TPPI[4V*=9[ V>9>E:B6)E\[YO$7OO:!W M#("N'N-NH,[C0&\<(_'/4)V3GGU&',OIM71H=K#'RYT6N6^6_\Y28^O! 7*KWR9OW,G>SK*]@M=[[EI&::3XZ[?Z MF3_Z]+OW[]UM=G[Q1/)'_M!FWA/?;X7FHN)!K%O*KCHX%DHLM[TQ_^ M6K^UF08)['-?D;D ML?9#PEPDS"MAPP*6OS]MIX-1WYKHW__MOK%:JHV=T6CY MX2GCY1!I1"3,1<(\)(PB83X2%H!@#2..=D8<&1]^-QNI2Z0DU^&7322C_-%W M1FZY"+EVY9+G,?1CIJ)TF=N4ZPZHJJYHG4/<&)L[UII(F(N$>4@81<+\$C;9 M"]_6>6_2#-[!"Y4:5AKOK#3^@3A*_B.S8LJLBP6/BS*YBM:M+V+&!HXU#Q+F M(F$>$D:1,!\)"T"PAADG.S-.3AE@)T@C(F$N$N8A810)\Y&P 1K&-&VZM4\ MRSPEK:(EJ3P9MWORC'PJ%G7UN>LM%WGL_2#Y8A.3M]&"MR[W&=L]UJ4OC&)( MOG$FVI[:+K0?'I1&H30?2@M0M*8O]U:9;>,=O6,)_T:\=!N)+$WRU[U8!^YD M'4]\M MH-JV->Y-K.8D;&;NPM%&@Z8JH#0*I?E06H"B-8U6YRML<\+BD"BLY]!_9.GK M4!=SI:VW%)SG55O=!TUF0&DNE.9!:11*\Z&T $5K6K3.C]B#DT9G:-H$2G.A M- ]*HU":#Z4%*%K3D77VQ#:NB9]P2FUN=_#L)'AF5A[M2V@>!4JC4)H/I04H M6M.7=3+%-F=3#@SFAR^(F]L[^MD)S:= :1Z41J$T'TH+4+2F1^LLC3T^:32' MYFB@-!=*\Z T"J7Y4%J HC4=6:=J;.,"_ FCN;E=VQ3.H4D;*,V#TBB4YD-I M 8K6_.OD.G/CF',>?PDVYR350;W-76;QL4]"*,V%TCPHC4)I/I06H&A-P]4I M&<<^96QVH)D9*,V%TCPHC4)I/I06H&A-1]:9&<>XSGZZV&QN]VBO0G,V+UP3 MPWN#!^T(A=)\*"U T9K&K!,TCCE!4\=F/:'^T52VN8VC30C-YT!I'I1&H30? M2@M0M*8OZWR.TS]I"(>F;Z T%TKSH#0*I?E06H"B-1U9IV\<\_Z6TX5P<[NF MZ;59>K0QH5D<*(U":3Z4%J!HI3&[>SN>$RZ6Q>YW2<)LDZIR)^FN=+?#_KK8 M5_ZD_,:^<.V6S^3\'T?U!+ P04 " "/AGM8@W6 MMU,$ !C% &0 'AL+W=OJKNI%T2.Z]L >D.>FJEWNWJMM=^J/K!$ /1)3&U#>S^^]I)R LX+O3R M!>)DYO$\,Y[QV),C9=_XEA !7K(TYU-K*\3NP;;Y:DLRS$=T1W+Y94U9AH4< MLHW-=XS@N%#*4ALY3F!G.,FMV:1X]\1F$[H7:9*3)P;X/LLP>_U 4GJ<6M Z MO?B2;+9"O;!GDQW>D&F!S9-4J<9"3G"6HZRB*1D)10$EG\',B=IJI"D'?]4H%8]IU)L/Y_0/Q;D M)9DEYF1.TS^36&RG5F2!F*SQ/A5?Z/$74A'R%=Z*IKSX!<=2UI?"JST7-*N4 MI059DI?_^*5R1$L!N3T*J%) YPI>CX);*;@%T=*R@M8""SR;,'H$3$E+-/50 M^*;0EFR27(7Q63#Y-9%Z8O8;D3[@X!X4#P!S3@0'.(]!FN!EDB8BD9_?+HC M2F:.:J9HP+/[<&;[QDCN=#Q*!4]O:)*K >^PRLRM63F<,(.Q)K]^ ,,G)]T MK 8"ZW!T:XZN"?W$\116N@9QPE*,&" DR5 MEL,L'(?CB7W0L/-J=IXQ@I]IONH/HC>D^0.!=6CZ-4W?&,3',DKY!J1%CC)5 MF>[I^GY?)ZR.OW_A<01=W_."VNDEM5+.;\LY?N1&GCXX06UU8+3Z=RIP>IO% MP:4ER//'47AFL48..K MU[$XK"T._V]!"(=<2P.!=3A&-Q5:V^$P0J'KH+/5IQ/T MQX[OH9[@-,T"-.[3G7+66H5::]%EY461!X/S.J83A)X7^CVE%S;;/C3O^V=; M!K\#QZ*?E6F"#_+31M9DHIK\9E<1A&5:-N:9 O!*,., @DQFXA8$(,:O.K?, MKP0*2R"N1>JZH^D3H'%_OL8=12G9R_4H!8G6#^44$+:BY8P<_S*J/8*PKT T M?0 T-P*+=KE[K,O=2&NN$>KFK*S M:5&@N4=Y8F2'DQC\_+(CN3I3JT/TH]@2!D[MR_OR&/;7)Y(M"?M;2V'01F4H MM.X!N^EHD+FC,1VQ!VUGAD+K\FS:&61N9\Y/:.41YPX8BE:%V-[[(92-"CQ; MKQHYUP_0>8=@MVZ U/7;)\PV2:-5#@3=%9="2RH$S8K' M+<$Q84I ?E]3*DX#=<]4WRO._@502P,$% @ CX9[6(N_ &NT @ C@< M !D !X;"]W;W)K&ULK55=;YLP%/TK%INF5EK+ M-R0=06J239O4:E&S;L\NW 2K8#/;2;I_/]L0FB:4[F$OP3;WG'O.);XWV3'^ M* H B9ZJDHJ)54A97]FVR JHL+AD-5#U9L5XA:7:\K4M:@XX-Z"JM#W'B>P* M$VJEB3E;\#1A&UD2"@N.Q*:J,/\SA9+M)I9K[0_NR+J0^L!.DQJO80GROEYP MM;,[EIQ40 5A%'%83:QK]VH6ZW@3\)/ 3ARLD7;RP-BCWGS+)Y:C!4$)F=0, M6#VV,(.RU$1*QN^6T^I2:N#A>L_^Q7A77AZP@!DK?Y%<%A-K9*$<5GA3RCNV M^PJMGU#S9:P4YA?MFM@PL%"V$9)5+5@IJ AMGOBIK<,!P(U> 7@MP#L&O);! M;P&^,=HH,[;F6.(TX6R'N(Y6;'IA:F/0R@VA^BLN)5=OB<+)] 94#02Z0#-6 MU8P"E0*Q%2KU,'Z/H-F_P[T!.7Y71]_P M^8-U["M,@POZN9'SJ<_4?R)[83'H+ 9#[.GW M&CB6A*X/_AV]CAN:R-#H+K)-X]#U(C>QMX=>3L.BL1VX2;0/6EL%?&TZOE#I-U0VS:([[8;*M>FE1^=3-6R:V?!,TTRJ M6\S7A IE;*4HG&ULK55K;],P%/TK5D!HDV!YM>DZTDAKRP02$].JP6ZZ=-'1=6X'$E\2/>X[/N;F^23=2/>D2P)#GB@L]\4ICZBO?UWD) M%=47L@:!.TNI*FIPJE:^KA70PH$J[D=!D/@59<++4K=VI[)4-H8S 7>*Z*:J MJ/HU!2XW$R_TM@OW;%4:N^!G:4U7L #S4-\IG/D]2\$J$)I)010L)]YU>#4; MVG@7\)W!1N^,B77R*.63G7PI)EY@!0&'W%@&BJ\US(!S2X0R?G:<7G^D!>Z. MM^PWSCMZ>:0:9I+_8(4I)]ZE1PI8TH:;>[GY#)T?)S"77+LGV;2QR=@C>:.- MK#HP*JB8:-_TN&9JF2&Z)L-++9 M@$G@H_K> M0K2U,(U.,LXAOR!Q^)Y$010?$#3[>WAT0D[<9S1V?/')C!Y*3(L;',;9ZWJE M:YK#Q,/[J$&MPO0F3X.,A4_^)[(7%06]Q<(H]^U:#PI(0J[90L#G86M$$ M2X7(?H\?343+GCAVVV;6V2@)+@>CU%_O6CP0-HB2<=*'O1 _[,4/_T5\IUS) MZI5T+/."Z1RKE8D&BNV^% =-#5^I#<,XWO?T.FH\' =[COR=^UR!6KDVITDN M&V':>]&O]IWTVC60O?4I=MBV(?ZA:=OS+54K)C0Z72)E<#%"8:IM>>W$R-IU MC4=IL >Y88E_"5 V />74IKMQ![0_W>RWU!+ P04 " "/AGM8&GPM)2<# M "&# &0 'AL+W=O6(*VIJDWJIJI=MVN'. DJ8&8[2?OO9P,A"5 G0KL)&/R>\[P^ ML8X9;RE[X2M"!'C-TIQ/C)40Q<@T>;PB&>;7M""Y?+.@+,-"#MG2Y 4C>%Z* MLM1$$'IFAI/E:I$E.'AC@ZRS#[.V&I'0[,2QC]^ Q6:Z$>F!& MXP(OR1,1S\4#DR.SB3)/,I+SA.: D<7$^&J-II:M!.6,WPG9\H-[H*S,*'U1 M@^_SB0$5$4E)+%0(+"\;,B5IJB))CK]U4*/)J82'][OH=Z5Y:6:&.9G2]$\R M%ZN)$1A@3A9XG8I'NOU&:D.NBA?3E)>_8%O-=67&>,T%S6JQ'&=)7EWQ:[T0 M!P++>4> :@$Z5V#7@G+ES(JLM'6+!8[&C&X!4[-E-'53KDVIEFZ27)7Q23#Y M-I$Z$=T3N08<7(&[M5@S E(U!@5^DZ42'%S<$H&3E%_*&<]/M^#BX^78%#*O M4IMQG>.FRH'>R7%+XFM@6Y\!@LCND4_/EZ-CN2G=-I918QF5\6RMY3X;E<[I MUZD-->(%CLG$D#N&$[8A1O3I@^7!+WVF_E.P(XMV8]'618_>6>B;2N65*K7! M-Y$;0#^ 8W-SB*X-/A#=:="=4^A.'WJE<@_0'0^%81M=&WP@NMN@NZ?0W3YT MMX-N^R&TPA:Z-OA =*]!]TZA>WWH7A?=]MS0;Z%K@P]$]QMT_Q2ZWX?N=]$= MRPO:Z-K@ ]&#!CW0HO]:$=EZ%X*P/@-!QX!GAR$*6@:T*08:"!L#H=X %3@% MB[[6T>$6E/WA/,12+)B+<@<)+DL#^&BM^W! MCJ$KQ_4"VVD9TF<I(1S5"@=PX[7VC3SG4 MTKZ'6]K^61;=-V1+WY%_TGP' M>UX=NJW:"I!O0]1&[IGHAM!U4 O9/#@DJA/Z#\R62&ULK59K M;]HP%/TK5C9-G;0V3_+H(%*!3:NT2E51M\\FN8#7Q&:V>>S?[SJ!%$A _= O MB1_W')]S8_NFOQ'R12T --F6!5<#:Z'U\M:V5;: DJH;L02.,S,A2ZJQ*^>V M6DJ@>04J"]MSG- N*>-6VJ_&'F7:%RM=, Z/DJA565+Y;PB%V PLU]H//+'Y M0IL!.^TOZ1PFH)^7CQ)[=L.2LQ*X8H(3";.!=>?>CA(37P7\8K!1!VUBG$R% M>#&=^WQ@.480%)!IPT#QM881%(4A0AE_=YQ6LZ0!'K;W[-\K[^AE2A6,1/&; MY7HQL&*+Y#"CJT(_B#N"= H(S '\'\"NCM;+*UIAJFO:EV!!IHI'--*K<5&ATP[CYBA,M M<98A3J?W/!,E$$VWH,@U&8ER*3APK8B8$59/3@%W"^Q[=>C5EA?J,H.?) MF%Q]_-RW-0HRM':V6WQ8+^Z=6=SUR(/@>J'(-YY#?DQ@HY/&CK>W,_0N,HXA MNR&^^X5XCN=W"!J]'>Y=D.,WV?4K/O\-V>U*3XT.NM'F -^J)&$ZNN-!X(TS_X"DE6ASMF:X3W+@I_@"W+1)>R&M<[6/ Z M"CP_C$Z$=<0E<>1%2;>PL!$67A3VS)F&G$PTU=U[)VRMZT5AD/B^CZ M21 &7K? J!$8711X?_9RZ%(;M43X8>(D;A*>J&T'1G[80[W=:N-&;7Q1[4]0 MBN1,97C?,+["S&(AE-24DDZ]<3MI3AQ&07 BMQWG^9'K!&>^?M+(3=XQN4GK M;/A1DF#23K=".S#![&+HB5K[H*"4(.=5G54D$RNNZ\NX&6U*^5U5P4[&AUCB MZXK\2E/_'SQ0.6=#NZ*V5S; S\=+O@,[D$_+&ZEV?DM2UY4 M4*M"U$C"=.1=D/,Q<0!G\;. M=I:(QO*HQ!/=G.=CSQL%4$)F;84W/RM8 QE M:9F,CM\;4J_U:8';ZQ?V*Q>\">:1*QB+\E>1Z_G(&W@HARE?EOI.K+_#)J#( M\F6B5.X7K1M;1CV4+946U09L%%1%W?SSYTTBM@"$'0#0#8!V >$!0+ !!"[0 M1ID+:\(U3X=2K)&TUH;-+EQN'-I$4]3V,=YK:6X+@]/I=9V)"I#FSZ#0*;J5 M8E6X1V0J!!7;ER<3T+PHU6=C]G _020G:& ?$$4TZ!'T/C_X?2(G*#-9^#X@@-\ MXZ644.OSOM0TR+ ?:=_7<[7@&8P\\T(JD"OPTD\?",-?^\)Z)[*=(,,VR/ 8 M>WH%.4A>]L78 )D#VD_(*HT8(0'#0W^U+7_?+@PP(:PUVQ$6M<*BH\+N-=?0 M)ZN!15ON"&,!BX*.K'V[4YJ0*.Z7Q5I9[*BL'T+W9XOMN8MI'&'2E;5O%V*< M1$F_K+B5%1^MU0E,P51KWENL\7L6ZSN1[40Y:*,^'1E@&AZ01?!K3\!OJ]<-;D=99!PF765] MAB&E^("RK6Y%_JT,+=HN=?((-4P+W=^*R-Y'AIFW"Y.PJW;?,$A8''03Z6_U MV0KDS(T?"F5B6>NF8[6G[8ASX1I[Y_S2CCZN?[_2-'/3#9>SHE:HA*FAQ&>Q M2:%L1I%FH\7"=?-'HU@5MRQ[2 , &D* 9 >&PO=V]R:W-H965TV<\^7[G'.;;Z5ZT!6 (8\U%WH15,8TYV&H\PIJJ@>R 8%/2JEJ:G"K M5J%N%-#".=4\3*)H'-:4B2";N[-KE I?;11 '3PQ!F\X:NX!;,M^9:X2[L4 I6@]!,"J*@7 07\?DRCJR#L[ACL-5[:V*E MW$OY8#>?BD4064; (3<6@N+?!I; N45"'C]VH$'W3NNXOWY"_^#$HYA[JF$I M^7=6F&H13 -20$G7W-S([4?8"1I9O%QR[7[)=F<;!21?:R/KG3,RJ)EH_^GC M[B+V'.+Q"8=DYY <.PQ/.*0[A]0);9DY65?4T&RNY)8H:XUH=N'NQGFC&B;L M9[PU"I\R]#/9)Y'+&HBACZ#)6W(#N10YXXRZ2Y8E*:$ 1;FU((H:-)7$5$"@ M+,%]@O;T[ H,95R_GH<&:5GP,-]1N&PI)"[)SUTTNZ.4X>7/N..?=?3>@_]WC:/SW5# M!R]\TG[3V '0H>=T&$?>O9M<#L@VE"S-E+][$+'!HA/ M=PLVQE\-H MKC<86E3E%7E%Z^8=N8(-]HL&J[\A7[&.+!44S'O' MO;#_F@K]',_BP2QY^;HG[*>=VFDOTC5@/Q%6'#-0>U.\'^ L&J1_4&DU_-5Q M$O5JF'4:9KU(=Y2OVYI/.;9V*G(79K8C@L+/Y>H_U1J,5U\_^)F-?[^^F3^I MTA/)$D>_^UK4^\ZOTF VGZA(_$L",H:X/-22O.TL2_HILOL%U!+ P04 " "/AGM8 MRX_D%LT$ !2$P &0 'AL+W=O>#\NSZY62U<7S.B!NLZ)KL"O6%[_^@AX BC9?S0C:_SKZU3;#KY#NI M>'EP!@8EJ]I_\G1(Q)$#"B<<\,$!O]8A.#@TF?-:9DU8UT21Y5SPO2.T-:#I M@R8WC3=$PRK]&.^5@+L,_-3RILIY21U%GJAT9LZ?4#@%KS8S146ITT&%H"M] MVRD8>6 %4\_.VVNJ""OD.W#X>G_MO/WUW=Q30$9#>OEAX4_MPGABX6N:7S@! M>N]@'P<&]ZO7N^-3=P]2T.4!=WG #5XPB7<4*I&2*GEI"JI%"D9HI4K!_(:?BI5[I$^06:G,GS(R3$94 MQRA)!XS'9A-DTXYL:D^LVE)A(I2.5L*9GX4#/F.K"3Y9QR>S\OE&BAUII;( ML295;LY79EFXI3:VF$$$P42S(+^7'M_*T#!SC3KBC]L%!4$<#(O08)C%21CA M":)'&HE>+PY'#6-4B /6F23B7&BGD?>JB*P:M+P3L&$4H/FD6CGTQXXU"F$, M&QOZ+@J38/B0QG8X"U 633RD7L^07=!N*D6J#7LHJ*V6@O%,#:%$AB5OLL,H MP1/#%_4BANPJ-AR_0F\S9WP]VTDK;X-@92@<31&3G640HU[9D%W:NA;X&UK@ MMF^!]\[O H39R-D@")3*4KC>*AG)D,4!W&*)D@?O9':M?=>$:%F MNQI>)Z2R5P0>BVKBHPA*8LAV;!CB)$RG1BWNY1?;Y?>5FSG\_V^/5I.6G7?T MP4-_;?I,Q(95$C1U#3[^10(!BO8#3GNB>-U\ WG@2O&R.=Q2LJ)"&\#]->?J MY41_5ND^HRW_ U!+ P04 " "/AGM8=>P R'4" ";!@ &0 'AL+W=O MV\FB FTNIMTD_CJOG_,Z/DD:(1]4@:AA5S*N M9EZA=741!"HKL"3*%Q5R,[,6LB3:=.4F4)5$DKN@D@5Q&$Z"DE#NI8D;6\@T M$;5FE.-"@JK+DLC'*V2BF7F1]S1P1S>%M@-!FE1D@TO4]]5"FE[0J^2T1*ZH MX"!Q/?,NHXNKJ5WO%GRGV*B]-MA,5D(\V,Y-/O-""X0,,VT5B'EM\1H9LT(& MXW>GZ?5;VL#]]I/Z1Y>[R65%%%X+]H/FNIAY[SS(<4UJIN]$\PF[?,96+Q-, MN2 HMX>RU-+,4A.GTQN>B1)!DQTJ> N7>4ZM6X3!#6^/W'IW.D=- M*%-G< *4PRUES RK)- &P0H%6;?=5;M=?&2[.68^C*(W$(?Q".Z7'+9OT#)-!AJ4F&H'PW#!DYG)\KB55.6TKRY!Q@[+/-&[:0T]? MU+CI_Q];Z(_^,2[8JS6V;-\2N:%< <.UB0K]J;%?MJ6P[6A1N?*S$MH4,] 81E)!K$X+A:0NW4)8F$N+XLPOJ].\TCL/K??2?+7DDLV *;D7YR N]GCFI M0PI8LJ;47\3N%^@(129>+DIECV37V7H.R1NE1=4Y(X**U^V9/7="#!S\^(P# M[1SHL4-XQB'H' )+M$5F:=TQS>93*79$&FN,9BZL-M8;V?#:I/%!2WS*T4_/ M/S)9\WJER 8PN6LF@5S=@6:\5._(>_+UX8YZ@.(P@(L@>Z1TC_2&7HQX!_F$!/Z/A'HT& %T^WIW>@%.T L7 MV'C!JX4;$ZF-$8[',"5ZK38LAYF#-:A ;L&9__"='WL_C1%\HV '=,.>;G@I M^OPW["B\SD4%9"E%17),+J\;5(!@2Y',U*0B3&O)%XUFBQ*(%N06%T7)"Z:A M((]XE+@T(9]T,2&XM?.GM2@+D&I,NA9/;/&89K2=!UZ<4#^(INYV*,NI84II M$H1!;W? ..H91Q<9?P*EK@E*N00I$;[%2PJ^Y074Q2CD-F T0/+>CR(_. (\ M9N9' 1W'&_=XX[?(T!9+>Y\>-*ZPE=K=J]"9Z#5@#\0T8:>Q#D0L39?D.8'A M?A\ZC@D1GS#$W$5Q3.F1%*>&*?6CU/?'M4AZ+9*+6OPN-"M)*91JM2BXZN3 M1+ZH,08]&4F.E\9)&!Y!'S&D0>)[83:./>VQIZ_-X_^3K/2D?F@6Q5F:I$>, M3PVC- R3^,S&S7K"V47"C_93BXEA6TS,"DC=5 O$C6S>A/._ZDI[QT%S(E=\ M#V'T0YB=; 0_2H+,B^(C_<8,*=IY9W:,[[U\Q+UOE7#0P%H5<993FM6%:0Q% M(\W)J(JJ<5'\$]<.QT%E9VEZW)+'S/RAV2'/P;#B7^1Y+S1@&6-M%[QLS !( M8+G$B= P;6IX!IES96N\:W=U@>M;4+KOX"O):CU:^MW+#[I1G)VD<<0LR6AT M+HGTA1S]UB1VJ6L,-1S=^Q*P.31*X/I_MO]'I:(C>SF-HS1+CM4:LPP]/XZ. MO\_N8(JM0*[L<*\045/K=DSL5_L?B ]V;#Y:OS$_%G8Z?@G3_I5\9G+%<5N4 ML,20WB1!6+(=]-L;+39V5EX(C9.WO5SCSQ%(8X#/EP)W8'=C7M#_;LW_!E!+ M P04 " "/AGM8CVV,!O " !2#0 &0 'AL+W=OMA!:UO?8F XDVB5/; MP/;M:\ \'>HZ\P*(,>N0 M%!(QLR,TQEQTZ5YG*07L9U P0QYC^ MF4!$3F/-U,X#S^$^X') =T^2Y\><$,'DCT*_1Y,-8&&O)AAP\1?R:G!>3^=*6>1R*6?:.3LK5M#7D' MQDF 4G!"5 M]D)/-K(XS7@166$B,VK+J9@-!,P8E_0-_01Z8@%F (; MZ5RL(FUU+U><*$7KBJ*-GDC" X9FB0]^!;^JYTVK1D 7[A4^6FG9_TNU3E52*=:I9N6Y.F0I]F"L MB8.3 3V"YG[Z8/:,[U4!W:;8M$VQ69MB\S;%'ML46[0IMFQ3;-6FV+HEL8MT MZZ(_U83IUF9M-J MLT'7*'_,2VAV"S2_!7J\!5K< BUO@58*ZE\P=N_2:%UIY!1&*FCT4ND3 ]UG MU3E#'CDD7/TU%Z/%!> ^JWO?C4_,X=*L&%^)"X,JM?[)J]N&.)WV8<)0!#NQ ME-'IBQJ6J@I>=3A)L\+KA7!1R&7-0%QZ@$H#,;\CA)\['?31,#B=-> US:(.GU7ASZ8BW1]B+2 MKFYW%>>^?8>2(DK+(24[7 M+U>??>@N7[;+858W[D-7],OYO.K^>.-F[?VK,W[V[8./]>W=X#^XN'RYJ&[= M)S?\LOC0X;N+;2G3>NZ:OFZ;HG,WK\Y>\Q=75OD+5HK_U.Z^WWE=^*I;^9+0Q^^;0L^VW^DOW'W]K?2_KRJ/E;FN M>G?5SGZMI\/=JS-[5DS=3;6<#1_;^W^X3856!B?MK%_]6]QOM.RLF"S[H9UO M+D8'\[I9_ZR^;AIBYP*N$Q? Y@(87R 3%XC-!6)5T;6S5;7>5D-U^;)K[XO. MJ[$T_V+5-JNKL39UXV_CIZ'#W]9XW7#YR=WB31F*NEEW"=^T/[QU0U7/^A^+ M\^*73V^+'_[\X\N+ ;_,7W(QV13\9ETP) KF4+QOF^&N+_[63-UTOX +=+FU M"M^LOH%LB6_=Y'DA^+,"& C"T-7QET/&CMBVG%B5)PZTW$>W:+NA;FZ+=SMM M^-O/*"_>#6[>_Y=JO'79DB[;C]T7_:*:N%=G.#A[UWUQ9Y=_^1/7[*]4Q4]4 MV%XSR&TSR%SIEQ_=%]U,/E$,=?R\OP7"F1@9CH6!"*0Z"-FBV!DW>H&M<5\V*JID6U10G MH;H?NLI/OX7[BCSI74_Y-I$=D$:!T'KDFQ!R9G"02]JWW?JV>=](L>*'&;;N MCX4G1M\C%J=UOVC[V@_2?E6C>KZHZLX/Y?Y9T3CR%MC(X;G!?CRJ!Z'B8%BB M%N6V%F6V%N^:23MWQ4W7S@ND=[>:7\@&+^/[;[@V&LS(:"S$_@3<*MHI9P$F M+.OU7\.=ZY EWG&R,3=E['X]#CC!QY,"H9-:6LX2+G>0QX]IT6N'T[7;N"V& MZBO=C3>%[3=K6:I2LK'A6%D:H5&;< S!,60=O\$1B+-#@88/^X5XOC"*,2[' M=F.A*+41B>F,!S#R+' N_^F&;RY7O7:"<4#=+#TB\QUX4^Z>(PY2E3">,@AE M*20#I1/F \YXGF?O#ADOJF'HZNOE4%W/\#:T1=,VYU[9M;.9E];-X)"S UU% M&1E7!OL3'UF,MY0"+/,_&HNQ-5\@H_;&?UM!K8%!ZN3S73N;NHZN0;OW+63WAJ"O:6R2L0= M,E:B3D.9P!L/E.9Y3+^>3-HETA>CM(FKO_AJI=D1,U9@#]$V]ALK/8LU!G<) MPP'(_!"1,9HT%=^GL+4>1T,D5T"8NP"5THP-0XC*"5.4 82+0R!T) G](?.#\D!&W@Q MJS;-ZWY?U@L?IB4[!\3\50I;3<&XU[,9:8\@)5C-)1M/SY2225 L!54(4(4\5-=X MZ3=+ IG!1:2;I6$8=MEH=!%2PX74+'G; PTA3\/7*X,^,WX !R&F&R)<,ALE MHJ12:V9TJB<$#D*>@^N&SC0PE4Q:*0P&D6.7L927@C&=S.@A, WR3/NX6D$K M?GOOYM>N(U> \B4\= GH5*7MUS<@$,*!]!XQB>4H! -R:E*!+:*/%N/6!,3,1ZYP! +=@*0C4]""4I:HU,^ M TA%'J2'EL5$#$6N06L+XX%.*7'>0N(GEA+$SAIPGI^/7!H3,2FY+AF2:+RF M0"FE4@BX1*8K E3% :B>;'E,Q& ]!V!ZS 5*)TI1FD15 GY%'K_'KY&)F*KG M2"90XR"<$G)N37H$!OJ* _1]0,(CB$5=#%E*.5Z=)H08SXH24HT;D"ORR'U< MNB-BN@K,=3!\&1LGB(VTUBH!81$@+/(0?EP6(8@4$RS#%A]':(02C"Z-+%/S M2N"IR*>8#\DB!+'N:YD4XS4S2J>EL#;1T#(@3^:1EPO/94PRSC%YX6/D'2'< MMQ>()_/$.S8XET16:(V16H[O/*'4?M7$)-LR8$\>6.I=SCYGX\;\]0\-EDY5 MVGYM S_E4VZBRI/NHIZJM/VFV-E'??Q&:LQ-(3$<9&I, 4H)9@JOV\[5<:@Y$QJ'6\R$,JR5-:JQ)*G M#$B53[*C*HF,U0@#>KS200F584:D6C56)E3 64J@.I:"8(4T06B0&M->,,[0CAOKV -Y7'V[%!F(H)ID6I MM('(*[&5JOWAG=1NH=HY-I1GW2>D>SUQ?380RY?QT.CC5*7MUSA04^DG#,14 M%LD/;HH3E;;?% '.*@_G3""F8JZ6IM1:JS&V""58*Y2$U$ /"%9Y!!]SJ"V& MIM:F-$:/H44H ?RIE=3A*Q40J_*(/12(*2(?Y5SO[1=M3,9*934WJ;UG'7+77 ?$ZCQB3Q>(Y;_HH8-7QVSV1R 2 9L. M9-9Y,A\?L&F"L=J6AMGQ(*64$O\FW088ZSR,'Q*QZ9BYVOK]_LAN+,3HR!I( MK)#H &=]Z-#38^(U30!8@1E/,?GO?N1TK@/+]:&\]>"1!TUMM1JN;%P70@FR M9#IU!GCG$' ^;7UA1+1*5E**"WV[T308 .'[700LW+U*%3&_!F3W>2UQ*\XXI% M#S@0.K^.D9CG;&"=_?YSO);(,S7GT48\H3,J'8/;0#K[^%.\EH 7CFZ(W1T6 M[ML+E+.G.<.[*6;ON59EK=4R>B"04 JF9&G&9B]VGN">N^YV]6![7ZSFT?43 MTMM/MP_/OUX],C[Z_ U_<;5^!#X4LWXB_WW5W=8(O)F[P2+9UU&BC6-D\K/HP,=>8+LRX,V-[\^\[ M?!B,C:=UA/,0PW#OX7Z<@<,=[KCX+E< "OU($R9'UDJI]:UMR\4*4BIO^!J8 MOK+D(J5*GXK(EFL!-,R=TL0FCN/;*8V9-1[F:X]B/.0;E<0,'@62FS2EXFT" M"=^-+&SM%Y[B:*6R!7L\7-,(YJ">UX]"G]D52ABGP&3,&1*P'%EW^'9*O,PA MM_@:PTX>'*,LE5?.OVDX_BE!K>J>F>/A M\1[]6UR;YU-S+(VSI705V/MI\9SB'13%(I908FLM)_0$VR!;4 BH()! MB%[?]#W_Y@)%P"-!UZM88T.4]X&%Y;4B6A#HPSTH&B?RHT9ZGM^C#S]_'-I* M!YO=TEZ4@4V*P,B9P#!!#YRIE42_LQ#")H"MLZQ2)?M4)\2(> ^+&^3B7Q%Q MB-L2T/3_NQ-#.&Y5>3?'<_^C\D^PYD+%+$*S@QY\^U.;HYF"5/[55KP"VVO' MSO;^K5S3!8PLO;DEB"U8XU]^PK[S6UOB'8$URN!59?!,Z..2:FTY%HY^[I@] MCK9C/' (QL35[=L>)G!J&7C8\8(^J0P;P?6JX'K&X*;T+:4,S62B:2[1MP=( M7T&T-L0(=&E#.@)KY.Q7.?M7Y*7?91DZ FN4H5^5H?]>7A:.O0.V>;A/!J[G M'-'RU-!UW'XO&/3::3FH8AL88YO0%=4O=$/59%_;,UA!T*S&$VYT"TK^V1ZVAJ1+^Y11VC- M.M3*!P^N2==.55%7:,U2U+H(&_6&D:[!R0?1.3UP:FG6 Z36*\2L5QY!+'2K M,JKR)5IP)GD2AS33"**<+[3%7J(&!Q$Y-[A_%'>KE7OF]=/MX\6I_@VVDQKJUABNGQ Q51S"1*8*DAG9N^?J&*8B!;G"B^ MSF>:KUSIO9H?KH"&(#(#?7W)N=J?9#>HQN+C?P%02P,$% @ CX9[6%]' MI=4M P :PT !D !X;"]W;W)K&ULM5?1;ILP M%/T5BTU3*W7%F$!#ER"MZ:956J>H4;>':@].\@Q2?67%14*57HK( MEID NLQ!26P3C'T[H2RUPE%^;BK"$=^HF*4P%4ANDH2*^Q.(^79L.=;#B0L6 MK94Y88>CC$8P W69385>V17+DB602L93)& UMCX[QQ.'&$!>\9/!5M:.D9$R MY_S:+,Z68PN;CB"&A3(45'_=P@3BV##I/FY*4JNZIP'6CQ_8O^;BM9@YE3#A M\2^V5.NQ-;30$E9T$ZL+OOT&I2#/\"UX+/-/M"UKL846&ZEX4H)U!PE+BV]Z M5QI1 SB#%P"D!)#7 MP2X.9"B\YR6:=4T7 D^!8)4ZW9S$'N38[6:EAJMG&F MA+[*-$Z%,XCTIBC$TB(2QMJ/:"IT3H2Z/T!93/55FBX1W&Q89FH/4*KC-;_7 M;?SA D7 (T&S-=.W@\C@]TY!41;+?^_W1[;2S9I;VHNRL9.B,?)" M8Z>P.$2NNONMR M=*8@D;_;I!;<@W9N\Z0>RXPN8&SI1U&"N 4K_/#.\?&G-N$]D35L<"L;W"[V M\#$8TRH87QZ#\0-4F_R"T\\YS>_*;>AYPR'QB#.R;^O26@IU5> -O*JPT?:@ M:GO0V?:$WBK4@NB3 )!@$3Q+[O) ,L3]T/+\]L4=5VT>=;9_0-=7_UYU1 M[61XZQ[U1-80.ZS$#G<8U6&?-O1$UK AJ&P(=A#5X'D",78#_"RJ+84$NXX? MX/:H.OAQAL"=C5^F3,$2S115T!W9;J*W;E9?;$W9M=')V6%L2_*^K.B)K6G% MXW3D=$X=_QG=DK3^?Z]_8K%G!KY&=-L*!R3P@^!)=.W:)&Q>0\ZIB%@J40PK MC<2'1SK^HICLBX7B63XUC\J]- 6 , .@. 9 >&PO=V]R:W-H965TXY/P'>X9?Q!K D>LI2*D;62LKUN6V+> 49 M%F=L#50]63">8:FF?&F+-0>T,$VJ-AV;MAH^';"-30N&&([') M,LQ_32!EVY'E6L\+MV2YDGK!'@_7> DSD'?K&ZYF=HF2D RH((PB#HN1=>&> M7[J!3C 1WPAL166,-)4Y8P]Z& M/0O%&R%95B2K"C)"\T_\5 A127## PE>D>#M)P0'$OPBP3=$\\H,K2F6>#SD M;(NXCE9H>F"T,=F*#:'Z&&>2JZ=$Y$EO8#ND@2HH5 M!R=3D)BDXKT*N9M-TNF94K@3Z1!-(Z@"V M*K_DX#USF'BMB%.(SY#OGB+/\?R&@B[_/=UK*<PZ JMQ#4JN@4'W_V*?6U@S M+@E=UOQR_U6%HRL)F6B4(>A2AH[ :C+T2AEZK4<^!04:$\/Z%*E9"OF7%$W0 M1::5^6V>-8F0(X<&67_I/HZ]H*_^>D/[LEB6'K:6/MFD M#ZU>;4U_[2%U!%9C&I5,HR-Z->I2AH[ :C+T2QGZ1_-JCMRK>-!W?&_@>'M> M?1GG]?TP&@3-7AV4I0]:2Y\I*4@,HM6OK1"O/:B.P&IL76?WV^P$=* M=(56EZ)R37&/YMH"NFK'J-_S@VC/M0UQ813TG'ZS:UUO5[S76OPUIIN%NK!N MN#[#.TIDNX7;X5Y]-Y6Y1/)UJ8SF3.I^APS7*E6%+@.4,\7C,GG MB=Z@;&['?P!02P,$% @ CX9[6$C@6>[H! T1X !D !X;"]W;W)K M&ULQ5G;;N,V$/T50BV*7:"-1.J>V@8VR2X:H$&# M!-L^+/K R&-;74ET23I._K[4)9)ER5P;R\(OB2XSAW,Y)HXXDRWC7\4*0**7 M/"O$U%I)N;ZT;9&L(*?B@JVA4&\6C.=4JEN^M,6: YU73GEF$\<)[)RFA36; M5,_N^6S"-C)+"[CG2&SRG/+7*\C8=FIAZ^W!0[I07Y>WW-U M9[XABPKD50<_S:@5KMFZ;A[_8;^J4I>)?-$!5RS[*]T+E=3*[+0'!9T MD\D'MOT-FH3\$B]AF:C^HFUCZU@HV0C)\L9919"G1?V?OC2%V'' P0$'TCB0 M?0?O@(/;.+A5HG5D55HW5-+9A+,MXJ6U0BLOJMI4WBJ;M"C;^"BY>ILJ/SF[ M9D(BME =>89B P+18HZ64 "G675-YVK55$A.RWHC>%$$$LKN%S1P?7<#DJ:9 M>*]>?GZ\0>]^?#^QI0JR7,I.FH"NZH#(@8 P07>LD"N!/A9SF/X(P%='^].-.&X;<7="L\U7?$OORLD="LA%W^/U;5> MUAM?MMP.+L6:)C"UU.]= '\&:_;3#SAP?AVKB2&P7H6\MD*>#GV_0F.YU@!! M!5#N5,\SC",2>9A$$_MY-Y&A9>"&7AQY<6O8"])O@_2U03YNGA+%4Z[V(<:K MOC&Y H[6G/VCMBB4J"3$6.A:V%/;9 BL5X&@K4!P'B(')BMD"*Q7H;"M4/B] M1*X!_%UZ>I$3."'9X_'0$(>1%V+BC?,X:F.,M#%^S-<9>P6H"8N^W$'^!'RT M+UJ@4_MB"*R7<]SF')^'N;')"AD"ZU4(.YTN<+Z7NPU"CY-1[/H.]O;(.V;I M.6Z <3C.7KRC7[ VSD\;R!!+,RUS]1BG-L846C]CTF5,SL/>9EU353*$UJ]2 MI[*P5J(AC6KGL!: MF)-;8PBMGW2GG+!_)@(;U5:FT/I5ZM05UDJ3HP@<# GL$"]R!P0>&F*'J TX M=@XPN),X6*]Q[FA:2"AHD8">P5J8DWMC"*V?=*>9<'0F!AO56*;0^E7J5!;6 M2I2C&!P/B.D'+HGC_<^X,4,28"]PQPE,.J%#]$+GMA ;_DWZZD%.;8PIM'[* MG68B^#ST)49UEBFT?I4ZG46T"N48^C8(NZQ4W"71X.MMS#", N)'!^C;Z1RB MUSD/U9D;RM*D;!'B[)5F,@7]EYP>\^0^_1^'1:334,0[$YN-BBY3:/TJ=:*+ MZ,^KCF&S/R2IH_;8.-QG\] 0AQ%QW4.;<2=ZR'&B9YW10B)!LV\1V>A9D2FT M?O*=E"+AF8AL5'N90NM7J=->1']@=0R1HY&#"8_$9/]<8LS05Q+:/R"+2:=] MB%[[_%$=!FNI:_2PR!1:?Z31B2C7.=-0PZCN,H76KU*GNUS]6=41U&T0=N<5 MKA?Y9&=&0[FP)?5S%2@A&T*60_1VJ?M7/9#-8W<>WZ% M+Z_KZ6H'4P][[RA?IH5 &2P4I',1JA\4K^>G]8UDZVH$^<2D9'EUN0(Z!UX: MJ/<+QN3;3;E .\6>_0=02P,$% @ CX9[6"1<.+4(!@ 0"L !D !X M;"]W;W)K&ULQ5I;;]LV%/XKA#=L+=!%(JEKYAB( M[6P+T*)!@FX/PQX4FXZ%2J)'TG&[7S_J$E&T928V:/@EEN3#3^?RY> S>88; MRK[R)2$"?,NS@E\-ED*L+AV'SY8D3_@%79%"?K.@+$^$O&5/#E\QDLRK17GF M(-<-G#Q)B\%H6#V[8Z,A78LL+<@= WR=YPG[/B89W5P-X.#EP7WZM!3E VYJ3@*2T (XNKP36\G'BX7%!9_)F2#>]<@S*41TJ_ MEC>W\ZN!6WI$,C(3)40B/Y[)A&19B23]^+;/T@3D%_BS6C&J[]@T]BZ S!;Q:@9@':7N#M68";!57FG-JS*JQI(I+1D-$-8*6U1"LOJMQ4 MJV4T:5&6\4$P^6TJUXG1A'(!Z$)6Y)D4:\)!4LS!$RD(2[+J.IG+MZ9'*7CWX_NA(Z3?Y=N=6>/CN/81[?$1 M(O")%F+)P4TQ)W,=P)$!MU&CEZC'R(@X);,+@.$'@%R$>QR:O'TY,KB#VR+@ M"@_;+L+?'R42N!4DY__TY;5^K=?_VK)#7/)5,B-7 ]D".&'/9##ZZ0<8N+_V MY<02F)8AK\V09T(?=;EVK2?CIDY&7_@U9E!AEOWL>82\T$T'D/H MAI(;7FNHN>VW;OM&MV_R54:_$P)FLL*R7)](_DA8;ZF,0(>6RA*8%G/0QAR< MA\R!S0Q9 M,R%+89"D] YAK3[W 4XB!VH8^VR-QC")$;!]CO)W/4NAT9W;XM M^)HEQ8P8>6S$.+1*EL"T<.,VW/@\/(YM9L@2F)8AZ"KQX)Z R0UHEZ'(+2FZ MS>0>0Q@&+@KC?B;#CNJ!1L?O&%T07FI1Z?V"$'-O-H,=6C);:'KH2(6.SL/K MYKVVLF0)3<^24F30*&>.93;>)6SLXLC?%AP]AL@-P@#MZ=%0"25H5DK3E,E? M2)3QGVM>EP&H$II(;L0]N'R6T/0L*-T%_3.1W*I.LX6F9TDI-6B4.<>2/-CA M;ARYH1]O<[S'+H9^I\OK;BOY!,WZZ?-BD4H5;@6EE"TX-6X@M& M9V*T5<5F"TW/DM)LT"AXCF5TO,/4*$)!M-.U=^W"&./([62T$$GQE#YFK_1L,^RAM;.%IB=!:3($S\-P9%6^V4+3LZ3D&S(* MGR,9WH!VF>N'GAOC+8;WV44H#*,]#%=Z"IGUU&WQ3+B4);)K9Q7-7R&VU9TK M6VAZ[$J2(>],Q+8JV6RAZ5E2D@V9]\J.)+:_2UCLQ>&V&.FQP[X'_7W$5AH* MF374>,WE$\[!5%8WHZN\5"4W;Q'<9N"#JW>*'2VD-!D*S\1QJR+.%IJ>)27B MD'D+[4B.1SW-.W)WY$F/'8[](-@G3Y2J0F95-4[FDMZ/+:_-M+:ZOV4+33^7 M4<(,NVM-VZS2\_-C@EN+!9<$UH MOEH+PL##>K7*4L(_@ >Z$)N$$?!1_@Y]M<^;\0\N]2GVQ7#GI/)<1Y5VSRI/ MH?BP4GSX%,>5#:C6OZ,0=\YMFN!Z[!#"<$^?QTJ"8;,$&R?%5S!9)NSI-4I; MW06SA:9'K109*>FQ"W (]XR4>$IM>6:U]5DLI1IYX?)%KX]6=[QLH>GQ*@'F MG>G TK,JS&RAZ5E2PLP[Q8%E ZI-/J$@\GOY&%Y.ZF%.!5//EGZ2 B4M.,C(0D*Z%Z'\ M'V/UN&9](^BJFGA\I$+0O+IT0[.C_P%02P,$% M @ CX9[6$(B++W$ @ [0< !D !X;"]W;W)K&ULK551;]HP$/XK5B9-G;22Q($P=1"IT$W;0Z6J:-NSFUS PK$SVX3R[W=V M(*,H(";M!6SG[O/WW9WO)ENEUV8%8,EK):29!BMKZ[LP-/D**F8&J@:)7TJE M*V9QJY>AJ36PPCM5(J11E(85XS+()O[L26<3M;&"2WC2Q&RJBNG=#(3:3H,X M.!P\\^7*NH,PF]1L"0NP/^HGC;NP0REX!=)P)8F&9[,0TB1P@$Y-8A,/QK8 Y".""D\7N/&717.L?C]0']J]>.6EZ8 M@;D2OWAA5]/@4T **-E&V&>U_09[/2.'ERMA_"_9MK9C-,XWQJIJ[XP,*B[; M?_:ZC\.10YR><:![!WKB0(=G')*]0^*%MLR\K =F63;1:DNTLT8TM_"Q\=ZH MADN7Q875^)6CG\T65N7K6Q>(@N2JPN(PS,?WEBSX4O*2YTQ:LO7A0!O6@,;L M$F8P[[6S-.3F 2SCPGR8A!8I.> PWU\_:Z^G9ZZ/*7E4TJX,^2(+*-X"A*BE M$T0/@F;T(N(#Y .2Q!\)C6C20VA^O3N]0"?IXIMXO.0?X]L7JA9IV(_DGO.= MJ5D.TP#?JP'=0)"]?Q>GT><^F?\)[(WH82=Z> D]>^9F34H-0+BT@/B6:&:A M3W,+%+?EZ5I.DT6#:!2ED[ YEM-O%Z?#SNX-TU''='21Z9?7&OL)YD;Y6B:" MET!N=L!T?S5?1HN)\^S+QC5^A)*J?0OX*@JV,Q]BX"[H)G_T!4$L#!!0 ( M (^&>U@('K TK , "X, 9 >&PO=V]R:W-H965T2=LQ ML!\_DI)E99959_UBB2]W]]SIR#N/=UP\R16B@N<\*^3$62FUOG%=&:\PI[+/ MUUCHE247.55Z*%)7K@72Q KEF>M[7NCFE!7.=&SGYF(ZYAN5L0+G N0FSZG8 MWV+&=Q.'.(>)!Y:NE)EPI^,U3?$1U9?U7.B16VM)6(Z%9+P @?6.)6DVV"7@ZV/TF-K#U3TJRC+Y=NPJ M;=]H<>/*UFUIRS]CB_CPB1=J)>%=D6#R4H&KP6MZ_T!_ZW=JO,>X#P'Y!7S/ M#^#+XSU!./GT2Q1:=Z<\_ MD=#[M<.[0>W=H$O[]/-&246+A!4I4 5JA;# E!6%F>!+6*-@/('>9YL,$OYI M#6SI1VEI:"V9.V$[)20:>&-WVP(XK &'G8"_Z2 K'=(>7((P/$4( W+=CA#6 M"&$GPKMG%#&3%T.$)Q"]D1^0=HBHAH@Z(?1-M$2F(^'B\YJ)BV&B4Y@H' ;M M,*,:9O3:K,%R],J4&9U^+Y]$PW:ZZYKN^E*ZWC=[.>MHS;8H=+&!P\>$N6 Q M=N9\([['BZ7-BQ(G:GH1](=GLHYXQPO:NR3UO^O#]_ J,Z.7?*%_AJ]10,AE MY^+'" M9&S8]\YY<2PFY.)JT2#?Z5Y Z+YB0S/XR)8(5W\@%6<:BVZ+/NR- M* 20EPT&&4!"]UV%GQQ+#^FN/4UW9FDJ,*5*%W(-SW1S&L-7FFULRK2"E[K# M1HS]((J\_UYN;J.%RU&DME&5NB7;%*KLYNK9NAF>E2W@<7O927^B0E]C$C)< M:E&O'VD$43:GY4#QM6T(%USI]M*^KG1#C\)LT.M+SM5A8 S4?Q&F_P)02P,$ M% @ CX9[6'Z(0PC3! 22$ !D !X;"]W;W)K&ULU5I=;]LV%/TKA#8,+9!:$OV=V08/I!1]Q#83M^SLY2&6Z'L/>0]YQ /1@RUE]WP)(-!#$J=\Z"R%6%VZ M+@^6D!#>H"M(Y3=SRA(BY"U;N'S%@(0Z*8E=['D=-R%1ZHP&NFW*1@.Z%G&4 MPI0AODX2PAZO(*;;H>,[3PT?H\52J 9W-%B1!=R!^+2:,GGG%BAAE$#*(YHB M!O.A,_8O)[BG$G3$YPBVO'*-5"DS2N_5S4TX=#PU(H@A$ J"R(\-3"".%9(< MQ]\YJ%/TJ1*KUT_H'W3QLI@9X3"A\9,I *1--2M M42I8).<\V,V#!V!!I/I]-WOS\=N *69P:HAODA5QEA> # MA?@8W=)4+#EZGX80U@%;PD+T=<_)"2Z$9#P MO_81G/7?VM^_>IY<\A4)8.C(!P8'M@%G],M/?L?[=1\YEL!J5+4*JEHF].^G MZ@+]F:W2"_0^7Z9U-L:P_JV6]C\QLA!T]0O4LW8Q\K]5N]P?N MIDK3GK"NW^X54;7ZVT7];6/]^NF,;@F[E_O E$4!H*^WD,R [9UW(]BQ\VX) MK%9WIZB[K>L -[#]3S6Y4NW%(-+V"D=ZWB@;]@]XGJY@^@GP,5!JGTG( 8[). MKK91H\B,G1^[97/*=O9&4L7K\YF:&.70VVT.J%X[)P?&+MY .P19/UC2[Q?-73 MW)%%KX%[_>K?>VMRMC5T4O' M$EJ=F-(!^^U3*\VJ;;:%5J>K-,Z^T6R>K]*R8;*\L44J>C-,>^V1T; M9+77"$K*$DG6RR[0W._1B\826IVETC#[O5-KS*IKMH56IZOTS;[1:YZOQOK' M[V:[*8=W,URZ96QVR^,9W<#KK:$9[=C580NM7GOIB;%_8C%AJT[:%EJ=KM)) M8Z/U/%LQY<,V;5C&D#H=I5/&9J=L4,ZW6$%S;T\4L:E;<;= M4RO-JG^VA5:GJ_3/V/S&^6R5UMLYE-I1FBDDH\.M'$HGP!;ZK)ZC@*Y3D1W" M%JW%[P'&^A3\6?N5?SG)3O5+F.Q'!E*5BRCE*(:YA/0:7:E\EIW;9S>"KO31 M]XP*01-]N002 E,!\OLYI>+I1G50_'IB]"]02P,$% @ CX9[6/[E#&(L M"0 X4$ !D !X;"]W;W)K&ULQ5Q=;^.V$OTK MA'MQT0+96")EV=Z;&$BL;1N@VQJ;?CP4]X&1&%M8?;@4E6R*_OB2DF**LCR) M7+K9AXTM<8[(0W)F#DGYXC'GGXL-8P)]29.LN!QMA-B^'X^+<,-26ISG6Y;) M._OS1 M@(YVSU2&[<_/Z-]6C9>-N:,%6^;);W$D-I>CV0A%[)Z6B?B4/W[/F@9-%%Z8 M)T7U/WILRCHC%):%R-/&6-8@C;/Z+_W2$-$RP),#!K@QP!T#USM@0!H#TC4@ M!PR\QL"KF*F;4O$04$$7%SQ_1%R5EFCJ0T5F92V;'V>JWV\%EW=C:2<6MR(/ M/[]3S$4HS%,YG I:=LG9F0&/(CGQ2P9%#Y&\H9PWYRS;Y5YS3;,WD_!+H[@FURZWH4W7Y MZI'R"/W^@X1$-X*EQ?_[NJ=^OM?_?.53WA=;&K++D70:!>,/;+3X[U>N[_RO MCUJ;8($E,(-W;\>[!Z$OEF5:)E0Y''0?9S0+8YJ@+>.5&\U"A@3E:R8*E#): ME+SN!WD_SJ,^DL&'#249KCE!3XSRHH]02[4P")WL")V U?JQ3.\81_D]*I0_ M06LY? 7BRN<6*"Z*LCOW:^)JT$D%J@+4P\+UB3N_&#^T&0$?/73860(S6/)W M+/D@2U=)DH=4R$E\<.)_^*(^LS/THPSYDLZ?Z9<^XNKG^"WBI@[!LRYS^\7( MS,>^8Q8+P%H?R MAZR/][J:4V/6GZMX:O .-F8H[Y; #-[G.][G+_..KF'>KQO>FW)FD&\&N*(= M_5KQCGXJ12%H%L79>K\+/C&5\*M;2YE\<9E:ES*^_BNA3WX1:@DA#N\P2F-%EKJ.S8@=L]H=TF^1/C*%;"2W'\4&/W9H,=6]) M/V3T\C(OA"PC)(]"]DR8K[/X3S5S5E4^@63.\7Q9E>_-L>&Z#NDB&&IH']E" M,SNI)5UY.R%QY/ MG,.#"[02N==UD3WE_+G?358"N&K'-EV+&A?6!=+YO5OI%;-WM6[Y3HV5 M G9[-E7"TBI:8 O-7-G6H@,[;^SVL,WT?VD5+;"%9I*OQ02&Q82%Y9&Z#Y1" MKW*G@^O%+]3D\!KO$K8LH@6VT$SRM2S!L"RQ'5CAIT&! M]5C+ +8\ED&M;O +ZN;((#K?#Z+^U,-=S[E?S"73>5?83_-:'G&SF[TNK:($M-)/\U@$S6 V;Q\F65M$"6V@F M^5KK$%CKM .3C/ET&PLI%^N=?AGHJP?6QY2^+854B^A&SG$E(WMYMKJ[8Q4M M(#VR:^*H?SOW8IXFUU+)@Z72)Q8QEM*[9/_(#>018-3!!\>M[L;80C,9U0K, M<]_8(WA6%9M5M, 6FDF^5FP>O%5R%475643I!D*9I3Z?<(FS*'Z((W66E#,9 M HM8,%0TNJ)>/JIO\,9?L"1>QW=QHH)EG"&=(E<'9,SPV=M%<#6]PPM/L.7@ M[CB%AO.TAO->NZ/3PZ59N-*LXE37+WH MV-<'1Q'MO4RT5<%F"\TD6@LV[[7O!]'FC+K@M#J\OGT^82@V;-<+*G+VT@8_ M97KP9"IL.)C,4P@P3PLP#Q9@]1+"3:6T4%!R?=C@K$G;SI[O*B_;!JNP521CZ"_W#0YMP'09G#59%G"TT MDW\MXKRW%G&>51%G%2VPA6:2KT6<=Y(-*Z]GPPK/R%XLLJK#;*'55(U;[[ZG MC*^KWQ!0F5&9B?JU\MW5W>\47%5OYW>N7[OOE_6O#6B8^LQ> M0CKG4\D7KW]/H/XB\FWUAOU=+D2>5A\WC$:,JP+R_GV>B^&ULK571;ILP%/T5BTU3*W4E$$*ZCB UR:956J6H5;>':0\.7()5 M8S/;)-W?[]H0EG9)UH>^@'U]S_$YU_B2;*1ZT"6 (8\5%WKBE<;4E[ZOLQ(J MJL]E#0)7"JDJ:G"J5KZN%=#<@2KNAX-![%>4"2]-7&RATD0VAC,!"T5T4U54 M_9X"EYN)%WC;P"U;E<8&_#2IZ0KNP-S7"X4SOV?)605",RF(@F+B7067LY'- M=PG?&&STSIA8)TLI'^SD.I]X RL(.&3&,E!\K6$&G%LBE/&KX_3Z+2UP=[QE M_^R\HYN#CN (#X "#M ^!P0'0 ,.\#0&6V5.5MS:FB:*+DARF8CFQVX MVC@TNF'"GN*=4;C*$&?26S!, 1Z+(4L04#"CRGB:^ MP6,':$MKNNT_$X MB(,X\=>[KOY-B\-H_.&B3VOU^CN7O@*UJC[:M]LKUV6>Q:?8 MAMNN^9>F[>$W5*V8T(1#@92#\S%*4VU?;"=&UJZU+*7!1N6&)?Y*0-D$7"^D M--N)W:#_.:5_ %!+ P04 " "/AGM8-F)9V<0" !O!P &0 'AL+W=O M!JD?!H.]V#KI[KOO.TFGZ5:;1ULB.GBN MI+*SJ'2N/HMCFY=8,7NB:U2T4FA3,4>FV<2V-LAX"*IDG";).*Z84%$V#7,W M)IOJQDFA\,: ;:J*F9<%2KV=18-H/W$K-J7S$W$VK=D&[]!]JV\,67&'PD6% MR@JMP& QB^:#L\7$^P>'>X%;>S &KV2M]:,W+ODL2CPAE)@[C\#H]X3G**4' M(AH_=YA1E](''H[WZ!=!.VE9,XOG6GX7W)6SZ%,$' O62'>KMU]QIV?D\7(M M;?C"=N>;1) WUNEJ%TP,*J':/WO>U>$@8#!^)2#=!:2!=YLHL%PRQ[*IT5LP MWIO0_"!(#=%$3BB_*7?.T*J@.)==",54+I@$H:PS#=7;6?@(<\Z%+QLM7*IV M[WT1WRW1,2'M^VGL*+O'B/-=ID6;*7TETR"%E5:NM/!%<>1_ L1$N^.>[KDO MTE[$)>8G,!Q\@#1)ASUXPZX6PX W?*T63!BX9[+!#S"W%JD03'&X$FPM)%4# M+:R0V<8@!ZK%+>:-,4)M@M>U5J:;6# K+#Q<40*X=%C9'\?JU;(Y/<[&W\8S M6[,<9Q%=-XOF":/L[9O!./G@".'LAG84C*]>*+F<= M=IHD4\R&E@R&!<'1"Z^9=< ;/":H/^7I*.3J(3_JR(]ZD59"B:JIX&&%7L71 MXO8B_&5QQQV_\7]UD,;_0.NDTSKIW8ME8]K6D*.AUJ" F@6U0K)) E)KP?8( M%>*9U#H-KD3@6DIFCDGI3Y8F\(+,'#U#\4$3K-!L0JNW='0;Y=I^V,UVK\F\ M;:*_W=NG:,7,AMHA2"PH-#F9T&$R;7MO#:?KT%+7VE&##L.27D0TWH'6"ZW= MWO )NC&ULK5=MC]HX$/XK5JXZM=*6O !AV8-(P+9W)W5; MM*C=#]5],,D 5OV2V@YT__W920@)#5%?^ *V,_/,/)[Q>#PY"/E%[0 T^L8H M5U-GIW5ZY[HJW@'#JB=2X.;+1DB&M9G*K:M2"3C)E1AU \\+788)=Z))OK:4 MT41DFA(.2XE4QAB6SW.@XC!U?.>X\$BV.VT7W&B2XBVL0'],E]+,W HE(0RX M(H(C"9NI,_/O%G[?*N02GP@<5&V,+)6U$%_LY-]DZGC6(Z 0:PN!S=\>%D"I M13)^?"U!G M+*C*?]&AD T'#HHSI04KE8T'C/#B'W\K-Z*FX(<7%()2(3A7N&2A7RKD.^<6 MGN6T[K'&T42* Y)6VJ#90;XWN;9A0[@-XTI+\Y48/1TM!&-$F[AHA3!/4"RX M)GP+/":@T,M[T)A0]0J]1A]7]^CEBU?H!2(6$P MN�#]"#L;%3Z U/(&D"N,;[BD)PI# /.A'O(>ZAOG^# B_HMSBT^''UH,.= M?K6C_1RO?W%':SO8MC^%^J!=W1[;.Y7B&*:..9<*Y!ZO2&I50\V]Q!LZT$R$=S M<.+NZ^PZ[?\BNV'%;MC);H&?&>;H"6N0Z#$_!^A#"A+;\J-NT!)D; B;6H<^ M;(S 'G@&;4P+,^,:4:_GC\Z8M@D%)Z$&@[!B$%Z1P=]2*(664FR(;J,1MGD8 MGM%H$QH,VFF,*AJC3AKO!-^^-A086F8RWMG\.E6M&S1C(N.M'H^^3S$_[)V[ MW&G\%W/LMJ)VVQTA$P=!26(BE)1QFN,=-AZ:+W.6-=.F]B83L-\_YK9BHGCV&:P:8IB('N\ MINU;4<(WS];M63*W"H7#]@/HUYH$O]/WI]6B,R&[U7\V3M=":Y(-3F2#WTO* M4O]:;*^$UF1[ZE;\SA8AFA79I\P%<4R_&_0>6@MJ"=6HJ$'8&Y\G88N8*;S] MLRQT:UTK [G-FWF%*[J]:K1X,L[Q-/EN?VX=$W@V?8(I7R .66\(5HK Q MD%YO9*Y9633VQ42+-.^-UT*;3CL?[LQC"*05,-\W0NCCQ!JHGE?1_U!+ P04 M " "/AGM8KA8THO4# 7& &0 'AL+W=ODX^?\:\B 9#D,<\*L; 2*4_YT QG;+RS7>KYPFVX3J2_8RWE)MW '\G.YYNK,;BAQFD,A4E80#IN% M=>U>A>Y8"TR+?U/8B]8QT5.Y9^RK/OD0+RQ'CP@RB*1&4/7U "O(,DU2X_A6 M0ZVF3RUL'S_3_S"35Y.YIP)6+/N2QC)96%.+Q+"ANTS>LOV?4$_(##!BF3"? M9%^U]57C:"%M4W?:R-: G*_!K@?]: MP;@6F*G;U=R-<0&5=#GG;$^X;JUH^L"X;]3*K[30"^5.!2!IFHGWY#?R^2X@[WY^/[>EZE,K[:CFWU1\[P6^ZY%/ MK)")(&$10]P%V&JPS8B]YQ'?>(/$ *(+,G)_)9[C>3T#6KU>/NJ1!\/ROV@Q M* ]?(7?\/GG'C%$3OI'AC7X0OK4)WS^'\)'_/JJFY(.$7/S?%[:*Z_=S=7JZ M$B6-8&&I_". /X"U_.4G=^+\WF1U%;%=(H1ZN M)WJ? 5&)6DA:Q&FQ[0M)19L8FD[P#TO?&4U'L[G]T#;[M)G3;1$,#NMV*?%$KG),5XR7C5*_M/N\&.> M*-=,,(.#"0LP82$2K!.,8<0>8-/S=_[ KA(TI*DA7IT0$A"HV^[E!^7OW5KZ>"AMW<'B[)SL@UK,HM("5%J(1>N&Y%#0NOY;91_,FG2% M2@M0:2$6K1NB0\7L#I?,/=DG@:P_\Z 6S:BTH*:U^\VH6N3B0K MS3;K/9.2Y>8P 1H#UPW4_0UC\OE$=]#\%[#\#E!+ P04 " "/AGM8)S4H MDI$% W%@ &0 'AL+W=OB\*QN&?M9 Y MU? H-U-52$83.RC/IL1Q_&E.4SY:S.V[&[F8BU)G*6+@8 MX='SB]MTL]7FQ70Q+^B&W3']I;B1\#3=>TG2G'&5"HXD6U^,/N#S)2%F@+7X M,V4/JG&/#)25$-_,PW5R,7),1"QCL38N*%SNV9)EF?$$<7S?.1WMYS0#F_?/ MWC]9\ !F115;BNRO--';BU$X0@E;TS+3M^+A%[8#Y!E_L 60W@!P/F/4,<'<#7 NTBLS"NJ*:+N92/"!I MK,&;N;'^TA']3&*<7=V519 S61=,,):F*,Z%*R9!8HYBJ+5K# M.J.45_EB>#^[8IJFF7J')NC+W14Z^_'=?*HA$N-O&N]FO:QF)3VS8H(^"ZZW M"GWD"4L.'4P!PAX'><9Q208]7K'X/7+Q&!&'N!T!+5\_G R$X^YI=:T_]S6T M7M6T_KY&2T/K)T/K=8/6K[^"!W2M6:[^[N*SFF[6/9W9Z^>JH#&[&,%F5DS> ML]'BIQ^P[_S.)@G(=9U2R!*U*C;BH]#B'GL.\1S_:(TZ[%S'<_V>? KW$8?# M^:1427ELJZKKAV,W=!'E"7+&T E5P6PKRY[&2&T!CK+%5^0YE 6H__$W!&4" MZ2U#12GC+?0L8\#-PD,-E2*#Z3:0H=6^4B97;S[>+KMX"%OX/->+HL ]XJ%M MUY.FT9Z!:)"!/TQVKIE4:"U%#B'>0VD4\@EI@0H)HD1J@%]DE&O+#/M>IH4I MG_8)<"HMRZKQ SP8L0&LJ@MBU K=Q4'H'2/L,)OY#IEUP\1.W4Z=MP#MB_Q% MW)T]U6D%'3B1B[WP"%R'(8F"@+@]Z!IB 0^BLRIO(M:3$I*0*L4@W<0*] !G MMD:R1\A/OF$V8SEH.(,0&ASD9\9,XF8I7:59JE/6N7B[Z0\0SCPG: %LV_4D M*"8U-C*([::QN>KTTULIRLT6I8TMG F^F4K)CL%QK#7M_:'4WD[Y*#6 M&'AVHJZ(!]7*FV&?R-LA[%JVX!=T2R-)L3MVG<@6E6A,(J^_U="B^ELL+BM;ESBDL [SOJV'79=W"?8<"V#\*#D6"P%M!1I/R[/S-^MED$B=B#K]92>%A,_;]6NJV40ICX MF(FVE0]!]3!1:RH\+*J6S=4;K.V#?MY#4NVML$_E M[1!V+;W(L/1J;FOXA "E8+,[(&,O"DZ]PW>Q'.QP!WLX./[\[C ,06A&87=N MDUJ-D6$U]M]7L5T S=!](\".$;;- N*U&M:T<027,[FQ)Y,*0BNYKDZQ]F_W MIY\?[)G?T?M+?+ZLSC!K-]61ZFZ$!FM @ M#0< !D !X;"]W;W)K&ULK55M;],P$/XK5I 0 M2&-Y:PL;::2U9:(2$]4JX,/$!S>Y--8<.]A.._X]9R?-NM%6^[ OB5_N>7S/ M^>Z<;*6ZUR6 (0\5%WKLE<;4E[ZOLQ(JJL]E#0)W"JDJ:G"JUKZN%=#<@2KN M1T$P\BO*A)3H?6WAG\9+#5>V-BE:RDO+>3>3[V NL0 M<,B,9:#XV\ 4.+=$Z,:?CM/KC[3 _?&._=II1RTKJF$J^2^6FW+L??)(#@5M MN+F5VZ_0Z7$.9I)K]R7;SC;P2-9H(ZL.C!Y43+1_^M#%80\0CHX H@X0/0<, MC@#B#A [H:UG3M:,&IHF2FZ)LM;(9@^00_M.7[6>3-IO8F.>!-&Y$8*4VKR1>20/R7P45JO+]KIFT0G&6>0G9,X M/"-1$,4'')J^'!Z=<"?NPQT[OL$1OEO( =#BE^)[(G^0:]_X-CCEZ3;[#'= MOA=D:M/MVJ;;?E;=?4,&,C=0Z8.1&;QF9%Z)[$EDAGUDABZ-6A+_762I0:]=P-:]J&XH6K- MA"8<"J0,SC^B2ZIMONW$R-KUKY4TV W=L,3W"I0UP/U"2K.;V /Z%S#]!U!+ M P04 " "/AGM8,-5.6$(" "8!0 &0 'AL+W=OWZ^Q_5=W KYH H C1ZKDJL$%UK74\]360$552-1 M S<[&R$KJLU4;CU52Z"Y$U6E1WQ_XE64<9S&;FTITU@TNF0VA;8+7AK7= LKT/?U4IJ9-U!R5@%73' D89/@ZV ZCVR\"_C. MH%4'8V2=K(5XL).;/,&^30A*R+0E4//9P1S*TH),&C][)AZ.M,+#\9[^V7DW M7M94P5R4/UBNBP1?8I3#AC:EOA/M%^C]C"TO$Z5ROZCM8B,?HZQ16E2]V&10 M,=Y]Z6-_#P>"8')"0'H!>2F(3@C"7A ZHUUFSM:":IK&4K1(VFA#LP-W-TYM MW#!N_\65EF:7&9U.E_0)[11:@G0O@F> %DQEI5"-!/0>W:\6Z.+UV]C3YC K M\;(>/.O Y 0X(.A6<%TH](GGD#\'>";+(56R3W5&SA(7D(U0&+Q#Q"?AD83F M?R\G9]()AYL+'2_\EYL[=E\=+CJ.L]4Z537-(,&F'!7('>#TS:M@XG\\YO4_ MP9XYCP;GT3EZ^LTTEQN>B0K0Q5>AU-'7T2$F#F%;R2XE5^/+<7@5Q-[NT,F? M@29L0JZB(:Y+TCMXY!7(K:M]A3+1<-T]HF%U:"_7KJI>K,],V^FZQ&],U[-N MJ=PRKE )&X/T1Q_&&,FN#W03+6I72FNA36&Z86%:)T@;8/8W0NC]Q!XP-./T M%U!+ P04 " "/AGM83DT@'D0" "+!@ &0 'AL+W=O&6RY8!4M)N6AXZ16FW/3MP *O& M9K8)[;^O;0C+IH1*>0';G//Y.T8V(HEXHRAAL!5(-E6%Q>L: M*&]CQW>."SM2E,HLN$E4XP(>0?VLMT+/W(&2D0J8))PA 7GLK/SE>F'B;< O M JT\&2-3R9[S9S/99+'C&2&@D"I#P/IV@#N@U("TQI^>Z0Q;FL33\9'^S=:N M:]EC"7><_B:9*F/GDX,RR'%#U8ZWWZ&O9V9X*:?27E';Q8:?'90V4O&J3]8& M%6'=';_TYW"2X,\O) 1]0F"]NXVLY3U6.(D$;Y$PT9IF!K94FZWE"#,OY5$) M_93H/)5L]/%F(-"3P!EA!5H)@5D!^MB5C%RE=S!Q;MK3UATMN$#S _3 F2HE M^LHRR/X%N%IM\ N.?NM@E'@/Z02%_@T*O" AYJ/IREK'$*L:._# GB $[R\8,_][Z,*$\'Y>D8/=DU%)#O M[6>W_JDV6F6\5O\?^Y+0:WQ=4'-^XWSKWHYYXTB I$8=N@1"EOF.IZQ; Z=-I5UV#^ MAG=M^@&+@C")*.0ZU9LL].L47>OK)HK7MMWLN=+-RPY+_;< 80+T\YQS=9R8 M#8;_3_(&4$L#!!0 ( (^&>UB6GHFQ2P, ,H4 - >&POS7 MS]<.X:.^B/5AI0MJ8_OXG'M\?4/<#BJ]$NQ^SI@.EKF0U9#,M2X_AF$UG;.< M5JVB9-(@6:%RJDU7S<*J5(RF%9!R$7;;[3C,*9=D-)"+_#;753 M%E(/2:\9 M"MSM2SHDG?B*!$YN7*1L2!XOWO]<%/KF7>#N9Q_.SMJ/ES?[XQ<6N"2A5_3Z M"-%6&]=&R!'/,5K/0VNU&UX+C=?W$K="0@ M^[@$'\RP$P_K,AD-LD)NJB4B;L!$ISD+GJ@8DC$5?*(XL#*:<[%RPUT8F!:B M4($V96KL=&"D^NW@CNM!!=%LK%=!/=[4D_? ]8],,B%: QVB1L8#4JJ M-5/RUG3L9#OX# KJ]L.J- YGBJXZW6NR(=B;"3(I5,I4$Z9#UD.C@6 9V%%\ M-H>[+LH00*V+W#123F>%I-;#FE$WC.R4"7$/C_>/;$=[F6WMJ]U5V32-H;KI M9%P']+?5G/:V[-6+=(.2/Q7Z\\(L1]H^5 N[4RSC2]M?9HT!3+V#J].R%*M/ M@L]DSMSBCPXX&M U+Y@7BO\VT:!4IF: *1(\,:7Y='ODEZ+E UOJ=3DM,]QS M]PUZ_K=YGC')%!7;IDWMGW*67^PXZKV69?NMLF_8Z[%^9Y^ZR>O3-QDEI^^Q M/O&:R[HWYVG*Y+,SEY'7=&+^4-O1-_-3EM&%T \-."2;]C>6\D6>-+/N(!'U MK$W[*RRO$S:)%$4QUA&QV.O M@S&6MSB&'[\:Y@T86!R(]'>YQG<;KY##=8#MZ:$*P5:*5R*V4CS7@/CS!HPD M\>\V%@<8V"Y@M0/Q_7&@IOR<*()=Q;QA3S".) F&0"WZ:S2.D>S$\/'O#_:4 M1%&2^!' _ ZB"$/@:<01S %XP) HLN_!O?=1N'Y/A9O_7H[^ %!+ P04 M" "/AGM8EXJ[', 3 @ "P %]R96QS+RYR96QSG9*Y;L,P#$!_Q="> M, ?0(8@S9?$6!/D!5J(/V!(%BD6=OZ_:I7&0"QEY/3P2W!YI0.TXI+:+J1C] M$%)I6M6X 4BV)8]ISI%"KM0L'C6'TD!$VV-#L%HL/D N&6:WO606IW.D5XA< MUYVE/=LO3T%O@*\Z3'%":4A+,P[PS=)_,O?S##5%Y4HCE5L:>-/E_G;@2=&A M(E@6FD7)TZ(=I7\=Q_:0T^FO8R*T>EOH^7%H5 J.W&,EC'%BM/XU@LD/['X M4$L#!!0 ( (^&>UAI":!P&@< ,L^ / >&PO=V]R:V)O;VLN>&UL MQ9M=;^(X%(;_BL75K#0L)80DC*8CL=#.('7:JE2SERN3&&I-8F?MT(_Y]7N< ME(Y#P]'>'+@JA#0\.(F?\]K.YR=M?JZT_LF>BUS9\]Y#596?!@.;/HB"VS]U M*11\LM:FX!6\-9N!+8W@F7T0HBKR07!V%@T*+E7OR^?=L6[-P'^C*Y%64BO8 MZ#;\D.+)_O[BQPJI9"%_B>R\=]9C]D$_?=-&_M*J MXODR-3K/SWO#YH,?PE0R?;=YZ2#O^]1'Y\# MXZ. G9MWVTI?RKP29LXK\=7H;2G5QAT&?L7 ^QEU.^S^-HWXR?R?9M3KM4S% M7*?;0JBJ:4H[(,L;8\I7HCSWFX7QE7&+E0%C<06JCD4[.M^*7SU(FM^ M=06X7AN:3Q(^,(NL!J>#G-U<+V^N%O/I_<6<_36]FE[/+MCRV\7%_=(##!# MX&2 [,,M]R!'".3HB)#+>_CS_>(: &\NV>)Z=N-!A@AD>$+(?P(/)HPAL3$64/NJC?M2QJT5[9L5D\20V!)7@MMVWX;98$BL@X5* M=2&@X']N,V$F&!*KX((;!1ZP#"XJ0.)&^(4Q9H* V 1S$&8F5.8W58#U_ %Q MS[\4F[I7D)TI)T!3!'6,T+9B>@U.@LY_*VS=CVV$@HX":H\6)J:"@%@%RTJG M/_LKN"?![[J (]EWS8C9(""VP9VHI!'U25Y!XZUEJR<+, ,$Q :XE(I#+0FG M4RI;F7KW%AS6_P?4B4$7A:QJI*9VJUT%U]]>91E@+@B(77#G-L*%5W+P/8.2 M!"Z^=%^C >:'@-@/RVU9YO7E!ZVJX9]3$P9 ;$R%D4)#==T M-VE=)OV.$P#ECUE@_A@1^V.Y75DHY1R@ZQ5;=\L(\\CH. G"3U_LP^WKJS]\ M2DPI(V*E=%+>N[C39D3'I:BCQ:&PV)#ZF)A61L1:.1097]O3Q\04,R)6S%MR M[#S/F%]&Y'[IB)"=E)A@1L2"0;-D:TAJA%EF1&R9 UERUYP^)F:9$;5E]C-E MU_D.,<&$Q()IPF4G%J:7D%@O?LKLA,.L$A);Y7W<[$3$I!(22^4M=W:2H3,< MQ![I"*"=C)A$0NH9#BR)MCK!$#-*2&R40TGTO9)#3"DAL5+01-!N34PI(;%2 MNFK%/IMFF72[^HD@Q)02'G_: S#?BDA_BA#SRIC8*]V8;]6%CXEY9GR"&--G M7[7.GF2>MUH3,\[X!#FFSURM:]V(A8^)66=,;)UN3*C5^ :JW8V/B2EH3#W+ M?CAQS44K^X_1:79B"QU.7(Y2^IB8A<;$%CJ("9UGGFL?$[/0F-A"7C"LFR]O ME1MCS#QC8O,<2(9=F)AYQL3FP:/AR%_W@9DG(C8/CAGZF)AY(F+S'$JP??9= M/,O4Q\3,$Q&;!\5L%6\19IZ(/.]@F*UK$S-/1&R>]^,!4+I!V&@2AF^>"#-/ M1#Z(]AYS6FA3R5]N9Q\37>)U[!G[SCXSPJP3'67N'IJO?K'#="<[EWSE.SS" M#!01&^@-N$8P:*B WTAMF*E'45M\[UD[^H#S-0?)PQ MM3Z[W%8NZ#;-6/*79G+1Q\0,%!]SC&W_U$L_5,28@6+RM6 M3-"[8]"*P='V M,#$#Q<0&VL.\$^"C5,)=7H_(^+=0C!DH)C=0"_,:OB;7:M.OA"E8YH\9Q9B! M8G(#M3#?1F'R9GF^CXD9*"8V4-=(<(>"8G2-,;&"O*'@+C1,.S'U6H&NL> N M2$PZ,;%TNB#=_?TZ-.QA)IAT$NJ5 IV870-N"2:=Y/CKSPZ,LB:8=))3KD5K MY8D$DTY"OBP9P_2S;H)))Z&>\SDT40&5G-SX"D\PZ23$TL$PX2,?$Y-. MY@1ST(3ZN1=L"27[X&-B#IH0.^CP(LKZS/N8F(,FQ ["YTU]!TTP!TVHUT.C MF+Z#)IB#)M0/R? 7]FC9K3#UOZM4N(FI5U@?$C/0A#SV6*C5#;LW/'.S:%,# M%^=&[*^3GF#ZF=3Z&=0[VR^?,^C2E,BNX?@6MJ<\3V\-3Z#;3?J2O-L]RSV[CGR+_\!4$L#!!0 ( (^&>U@4-@ &PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'/-VKUNXD 81N%;0;Z F/F? M6854VZ1=Y080&2 *8&1[M/[1ML-F7X_KX:$[U]/ESK;KC^OQLNQW[7F]>5_O:FN7 MR]CV]S.:I\?[F8N7SW/]GXG==ONVJ3^[S>]C/8W_&-S^Z?KW85_KV"Q>UOVN MCJNF_3C<+@_M]<,\7"8WB^?75=,_OYJFG3O((LC.'^00Y.8/\@CR\P<%!(7Y M@R*"XOQ!"4%I_J",H#Q_4$%0F3_(+"GC4B!I@K6 UH9<&P&O#<$V F(;DFT$ MS#9$VPBH;EGI; ;TM];8">MO)CVT!O2WU MM@)Z6^IM!?2VU-L*Z&VIMQ70VU)O*Z"WI=Y60&]+O:V WHYZ.P&]'?5V GH[ MZNT$]':3S1(!O1WU=@)Z.^KM!/1VU-L)Z.VHMQ/0VU%O)Z"WH]Y.0&]/O;V MWIYZ>P&]/?7V GI[ZNT%]/:3S6X!O3WU]@)Z>^KM!?3VU-L+Z.VIMQ?0VU-O M+Z!WH-Y!0.] O8. WH%Z!P&] _4. GH'ZAT$] Z3/RL%] [4.PCH':AW$- [ M4.\@H'>@WD% [TB]HX#>D7I' ;TC]8X">D?J'07TCM0["N@=J7<4T#M.#IL( MZ!VI=Q30.U+O**!WI-Y10.]$O9. WHEZ)P&]$_5. GHGZIT$]$[4.PGHG:AW M$M [4>\DH'>:'!84T#M1[R2@=Z+>24#O3+VS@-Z9>FPMH'>FWEE [T*]BX#>A7H7 ;T+]2X" M>A?J703T+M2[".A=J'<1T+M0[_*=>@_CYZ$.MYZO-9__G52/E^_6V^.ORZ^+ MDW?\BG-[7S$\_0502P,$% @ CX9[6$;]('I, @ GC8 !, !;0V]N M=&5N=%]4>7!E&ULS=M-;MLP$(;AJQC:!I8BDJ*H(LZF[;;-HA=0)3H6 MK#^03.K':^^?8T6[\Z#/WH-\DNA/E#EOEF M9X?:I]-LQ[BRG=Q0A_C5W6=SW>SK>YN)ZVN=-=,8[!C6X5@CN;WY9+?U0Q]6 MGP_Q9]]-XR9QMO?)ZN-IXS%KD]3SW'=-'>)Z]CBVOZ6LGQ/2>'+9XW?=[*_B MAB1[,^&X\N> YW-?'ZUS76M7=[4+7^HA[LH.?>;#4V]]>K[$&SU.VVW7V'9J M'H9X)/6SLW7K=]:&H4]/1:_.)X=XP_;TF5^_SOBU_CO[ M$) ^)*0/!>FC@/2A(7V4D#X,I(\*TD=^36F$(FI.(36GF)I34,TIJN845G.* MJSD%UIPBJZ#(*BBR"HJL@B*KH,@J*+(*BJR"(JN@R"HHLDJ*K)(BJZ3(*BFR M2HJLDB*KI,@J*;)*BJR2(JNBR*HHLBJ*K(HBJZ+(JBBR*HJLBB*KHLBJ*+(6 M%%D+BJP%1=:"(FM!D;6@R%I09"THLA8460N*K)HBJZ;(JBFR:HJLFB*KILBJ M*;)JBJR:(JNFR%I29"TILI8464N*K"5%UI(B:TF1M:3(6E)D+2FR&HJLAB*K MH&PO=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0 ( (^&>UAS M8H4/X@< )LT 8 " @0X( !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ MCX9[6-@K=-4\ P + T !@ ("!^A@ 'AL+W=OUC6XHO'8 L .DS 8 " @1(O !X M;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ CX9[6 :1\6RH P 7 @ !@ ("! MCST 'AL+W=OUA# M!\SLC1D &93 9 " @6U! !X;"]W;W)K&UL4$L! A0#% @ CX9[6," &0 @($!7P >&PO=V]R:W-H M965TU@KA)31M0( (0& 9 M " @8!B !X;"]W;W)K&UL4$L! M A0#% @ CX9[6%AI;.5%!0 5@X !D ("!;&4 'AL M+W=O&PO=V]R:W-H965TU@-ZQ!V8A4 %L] 9 " M@2UO !X;"]W;W)K&UL4$L! A0#% @ CX9[ M6#2BR65P! M0L !D ("!QH0 'AL+W=O%@ &0 M @(%MB0 >&PO=V]R:W-H965TU@%><5Z!@< ),5 9 " @061 !X;"]W;W)K M&UL4$L! A0#% @ CX9[6!<7W*MA! 7 P M !D ("!0I@ 'AL+W=O&PO=V]R:W-H965TUB\7+&O M*0P '@J 9 " @:"? !X;"]W;W)K&UL4$L! A0#% @ CX9[6.(,LUB,! ) P !D M ("! *P 'AL+W=O&PO=V]R:W-H965T MUCV=/9>T@( % & 9 M " @1*\ !X;"]W;W)K&UL4$L! A0# M% @ CX9[6'LH7CLG!@ A@\ !D ("!&[\ 'AL+W=O M&PO=V]R:W-H965TUBLS;/48 0 )4* 9 " @8[0 M !X;"]W;W)K&UL4$L! A0#% @ CX9[6$:B M*[H>! M H !D ("!)=4 'AL+W=OD" 3!P &0 M @(%ZV0 >&PO=V]R:W-H965TUCD>X=NI0( !X& 9 " @9K< !X;"]W;W)K&UL4$L! A0#% @ CX9[6(H:9'F2&@ ZEL !D M ("!=M\ 'AL+W=OPW>L# #J"0 &0 @($_^@ >&PO M=V]R:W-H965TUB/[K4#Z0( M & ' 9 " @6'^ !X;"]W;W)K&UL4$L! A0#% @ CX9[6 .(=Z9) P +0D !D ("! M@0$! 'AL+W=O&PO=V]R:W-H965TUC!\R.[-@, .T( 9 M " @?L' 0!X;"]W;W)K&UL4$L! A0#% M @ CX9[6%;GP)!$ P +@@ !D ("!: L! 'AL+W=O&PO=V]R:W-H965TUA:U'[_H@, -0) 9 " @5X2 0!X M;"]W;W)K&UL4$L! A0#% @ CX9[6->:B.YZ M!0 BA( !D ("!-Q8! 'AL+W=O&PO=V]R:W-H965TUBW6^#BO@, !,* 9 " @?4B 0!X;"]W;W)K&UL4$L! A0#% @ CX9[6%U\!-,^ @ K04 !D M ("!ZB8! 'AL+W=O&PO=V]R M:W-H965TUAR$^O_EP0 /T+ M 9 " @1DT 0!X;"]W;W)K&UL M4$L! A0#% @ CX9[6*UE&^8.!0 "! !D ("!YS@! M 'AL+W=O&PO=V]R:W-H965TUCP'23$L@< +9' 9 M " @8Q" 0!X;"]W;W)K&UL4$L! A0#% @ MCX9[6,H"V[<_ P O0L !D ("!=4H! 'AL+W=O&PO=V]R:W-H965TU@X5T)T908 .8T 9 " @;]1 0!X;"]W M;W)K&UL4$L! A0#% @ CX9[6""K@0)5! MXPX !D ("!6U@! 'AL+W=O&PO=V]R:W-H965TU@F MU_6@D@, *4/ 9 " @:]C 0!X;"]W;W)K&UL4$L! A0#% @ CX9[6$H8TY@" P R H !D M ("!>&&PO=V]R:W-H M965TUAW:='2>@, ',0 9 M " @<]M 0!X;"]W;W)K&UL4$L! M A0#% @ CX9[6 EU8Q(6!@ !2H !D ("!@'$! 'AL M+W=O- $7=\$ M !2'0 &0 @('-=P$ >&PO=V]R:W-H965TUA9K3:)MP( 'L' 9 " M@>-\ 0!X;"]W;W)K&UL4$L! A0#% @ CX9[ M6(WHLN$@"P 3(\ !D ("!T7\! 'AL+W=O&PO=V]R:W-H965TU@=6P:-_ ( %4) 9 " @>N. 0!X;"]W;W)K M&UL4$L! A0#% @ CX9[6(O$KGDV! ?!D M !D ("!'I(! 'AL+W=O&PO=V]R:W-H965TUB3*U)# M/@8 +- 9 " @3.9 0!X;"]W;W)K&UL4$L! A0#% @ CX9[6(-U@+=3! 8Q0 !D M ("!J)\! 'AL+W=O&PO=V]R:W-H965T MU@_+6.;@P( (,& 9 M " @1VG 0!X;"]W;W)K&UL4$L! A0# M% @ CX9[6!I\+24G P A@P !D ("!UZD! 'AL+W=O M&PO=V]R:W-H965TUBKA"__#0, !P* 9 " @7:P M 0!X;"]W;W)K&UL4$L! A0#% @ CX9[6!6W M+'M( P :0H !D ("!NK,! 'AL+W=O&PO=V]R:W-H965TUAU[ #(=0( )L& 9 " @3V\ 0!X;"]W;W)K&UL4$L! A0#% @ CX9[6&+6 M<9! >@T !D M ("!Z;X! 'AL+W=O&PO M=V]R:W-H965TUCN&CH1B@L M '9 9 " @6#& 0!X;"]W;W)K&UL4$L! A0#% @ CX9[6%EU2T# !K#0 &0 @(';U@$ >&PO=V]R:W-H965TUC\J]- 6 , .@. 9 M " @3_: 0!X;"]W;W)K&UL4$L! A0#% M @ CX9[6$C@6>[H! T1X !D ("!SMT! 'AL+W=O&PO=V]R:W-H965TUA"(BR]Q ( .T' 9 " @2SI 0!X M;"]W;W)K&UL4$L! A0#% @ CX9[6 @>L#2L M P +@P !D ("!)^P! 'AL+W=O&PO=V]R:W-H965TUC^Y0QB+ D .%! 9 " @13U 0!X;"]W;W)K&UL4$L! A0#% @ CX9[6"RJKK=W @ J 8 !D M ("!=_X! 'AL+W=O&PO=V]R M:W-H965TUC.OC5 F@, &H- M 9 " @2 $ @!X;"]W;W)K&UL M4$L! A0#% @ CX9[6*X6-*+U P %Q@ !D ("!\0<" M 'AL+W=O&PO=V]R:W-H965TU@GNA 9K0( T' 9 M " @>41 @!X;"]W;W)K&UL4$L! A0#% @ MCX9[6##53EA" @ F 4 !D ("!R10" 'AL+W=O&PO=V]R:W-H965TUB6GHFQ2P, ,H4 - " ;T9 @!X;"]S M='EL97,N>&UL4$L! A0#% @ CX9[6)>*NQS $P( L M ( !,QT" %]R96QS+RYR96QS4$L! A0#% @ CX9[6&D)H' :!P MRSX \ ( !'!X" 'AL+W=OU@4-@ UA&_2!Z3 ( )XV M 3 " 5DH @!;0V]N=&5N=%]4>7!E&UL4$L%!@ 0 !H &@ CQP -8J @ $! end XML 115 Show.js IDEA: XBRL DOCUMENT // 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)}}} XML 116 report.css IDEA: XBRL DOCUMENT /* 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; } XML 118 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.1 html 289 440 1 false 111 0 false 7 false false R1.htm 00090 - Document - Document and Entity Information Sheet http://www.cwco.com/role/DocumentDocumentAndEntityInformation Document and Entity Information Cover 1 false false R2.htm 00100 - Statement - CONSOLIDATED BALANCE SHEETS Sheet http://www.cwco.com/role/StatementConsolidatedBalanceSheets CONSOLIDATED BALANCE SHEETS Statements 2 false false R3.htm 00105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical) Sheet http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical CONSOLIDATED BALANCE SHEETS (Parenthetical) Statements 3 false false R4.htm 00200 - Statement - CONSOLIDATED STATEMENTS OF INCOME Sheet http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome CONSOLIDATED STATEMENTS OF INCOME Statements 4 false false R5.htm 00205 - Statement - CONSOLIDATED STATEMENTS OF INCOME (Parenthetical) Sheet http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical CONSOLIDATED STATEMENTS OF INCOME (Parenthetical) Statements 5 false false R6.htm 00300 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Sheet http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Statements 6 false false R7.htm 00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS Sheet http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows CONSOLIDATED STATEMENTS OF CASH FLOWS Statements 7 false false R8.htm 00405 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical) Sheet http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlowsParenthetical CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical) Statements 8 false false R9.htm 10101 - Disclosure - Principal activity Sheet http://www.cwco.com/role/DisclosurePrincipalActivity Principal activity Notes 9 false false R10.htm 10201 - Disclosure - Accounting policies Sheet http://www.cwco.com/role/DisclosureAccountingPolicies Accounting policies Notes 10 false false R11.htm 10301 - Disclosure - Cash and cash equivalents Sheet http://www.cwco.com/role/DisclosureCashAndCashEquivalents Cash and cash equivalents Notes 11 false false R12.htm 10401 - Disclosure - Accounts receivable, net Sheet http://www.cwco.com/role/DisclosureAccountsReceivableNet Accounts receivable, net Notes 12 false false R13.htm 10501 - Disclosure - Inventory Sheet http://www.cwco.com/role/DisclosureInventory Inventory Notes 13 false false R14.htm 10601 - Disclosure - Contracts in progress Sheet http://www.cwco.com/role/DisclosureContractsInProgress Contracts in progress Notes 14 false false R15.htm 10701 - Disclosure - Property, plant and equipment and construction in progress Sheet http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgress Property, plant and equipment and construction in progress Notes 15 false false R16.htm 10801 - Disclosure - Discontinued operations Sheet http://www.cwco.com/role/DisclosureDiscontinuedOperations Discontinued operations Notes 16 false false R17.htm 10901 - Disclosure - Intangible assets Sheet http://www.cwco.com/role/DisclosureIntangibleAssets Intangible assets Notes 17 false false R18.htm 11001 - Disclosure - Leases Sheet http://www.cwco.com/role/DisclosureLeases Leases Notes 18 false false R19.htm 11101 - Disclosure - Income taxes Sheet http://www.cwco.com/role/DisclosureIncomeTaxes Income taxes Notes 19 false false R20.htm 11201 - Disclosure - Earnings per share Sheet http://www.cwco.com/role/DisclosureEarningsPerShare Earnings per share Notes 20 false false R21.htm 11301 - Disclosure - Dividends Sheet http://www.cwco.com/role/DisclosureDividends Dividends Notes 21 false false R22.htm 11401 - Disclosure - Segment information Sheet http://www.cwco.com/role/DisclosureSegmentInformation Segment information Notes 22 false false R23.htm 11501 - Disclosure - Cost of revenues and general and administrative expenses Sheet http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpenses Cost of revenues and general and administrative expenses Notes 23 false false R24.htm 11601 - Disclosure - Stock-based compensation Sheet http://www.cwco.com/role/DisclosureStockBasedCompensation Stock-based compensation Notes 24 false false R25.htm 11701 - Disclosure - Retirement benefits Sheet http://www.cwco.com/role/DisclosureRetirementBenefits Retirement benefits Notes 25 false false R26.htm 11801 - Disclosure - Financial instruments Sheet http://www.cwco.com/role/DisclosureFinancialInstruments Financial instruments Notes 26 false false R27.htm 11901 - Disclosure - Commitments and contingencies Sheet http://www.cwco.com/role/DisclosureCommitmentsAndContingencies Commitments and contingencies Notes 27 false false R28.htm 12001 - Disclosure - Related party transactions Sheet http://www.cwco.com/role/DisclosureRelatedPartyTransactions Related party transactions Notes 28 false false R29.htm 12101 - Disclosure - Supplemental disclosure of cash flow information Sheet http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformation Supplemental disclosure of cash flow information Notes 29 false false R30.htm 12201 - Disclosure - Impact of recent accounting standards Sheet http://www.cwco.com/role/DisclosureImpactOfRecentAccountingStandards Impact of recent accounting standards Notes 30 false false R31.htm 12301 - Disclosure - Subsequent events Sheet http://www.cwco.com/role/DisclosureSubsequentEvents Subsequent events Notes 31 false false R32.htm 20202 - Disclosure - Accounting policies (Policies) Sheet http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies Accounting policies (Policies) Policies http://www.cwco.com/role/DisclosureAccountingPolicies 32 false false R33.htm 30203 - Disclosure - Accounting policies (Tables) Sheet http://www.cwco.com/role/DisclosureAccountingPoliciesTables Accounting policies (Tables) Tables http://www.cwco.com/role/DisclosureAccountingPolicies 33 false false R34.htm 30303 - Disclosure - Cash and cash equivalents (Tables) Sheet http://www.cwco.com/role/DisclosureCashAndCashEquivalentsTables Cash and cash equivalents (Tables) Tables http://www.cwco.com/role/DisclosureCashAndCashEquivalents 34 false false R35.htm 30403 - Disclosure - Accounts receivable, net (Tables) Sheet http://www.cwco.com/role/DisclosureAccountsReceivableNetTables Accounts receivable, net (Tables) Tables http://www.cwco.com/role/DisclosureAccountsReceivableNet 35 false false R36.htm 30503 - Disclosure - Inventory (Tables) Sheet http://www.cwco.com/role/DisclosureInventoryTables Inventory (Tables) Tables http://www.cwco.com/role/DisclosureInventory 36 false false R37.htm 30603 - Disclosure - Contracts in progress (Tables) Sheet http://www.cwco.com/role/DisclosureContractsInProgressTables Contracts in progress (Tables) Tables http://www.cwco.com/role/DisclosureContractsInProgress 37 false false R38.htm 30703 - Disclosure - Property, plant and equipment and construction in progress (Tables) Sheet http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressTables Property, plant and equipment and construction in progress (Tables) Tables http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgress 38 false false R39.htm 30803 - Disclosure - Discontinued operations (Tables) Sheet http://www.cwco.com/role/DisclosureDiscontinuedOperationsTables Discontinued operations (Tables) Tables http://www.cwco.com/role/DisclosureDiscontinuedOperations 39 false false R40.htm 30903 - Disclosure - Intangible assets (Tables) Sheet http://www.cwco.com/role/DisclosureIntangibleAssetsTables Intangible assets (Tables) Tables http://www.cwco.com/role/DisclosureIntangibleAssets 40 false false R41.htm 31003 - Disclosure - Leases (Tables) Sheet http://www.cwco.com/role/DisclosureLeasesTables Leases (Tables) Tables http://www.cwco.com/role/DisclosureLeases 41 false false R42.htm 31103 - Disclosure - Income taxes (Tables) Sheet http://www.cwco.com/role/DisclosureIncomeTaxesTables Income taxes (Tables) Tables http://www.cwco.com/role/DisclosureIncomeTaxes 42 false false R43.htm 31203 - Disclosure - Earnings per share (Tables) Sheet http://www.cwco.com/role/DisclosureEarningsPerShareTables Earnings per share (Tables) Tables http://www.cwco.com/role/DisclosureEarningsPerShare 43 false false R44.htm 31303 - Disclosure - Dividends (Tables) Sheet http://www.cwco.com/role/DisclosureDividendsTables Dividends (Tables) Tables http://www.cwco.com/role/DisclosureDividends 44 false false R45.htm 31403 - Disclosure - Segment information (Tables) Sheet http://www.cwco.com/role/DisclosureSegmentInformationTables Segment information (Tables) Tables http://www.cwco.com/role/DisclosureSegmentInformation 45 false false R46.htm 31503 - Disclosure - Cost of revenues and general and administrative expenses (Tables) Sheet http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesTables Cost of revenues and general and administrative expenses (Tables) Tables http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpenses 46 false false R47.htm 31603 - Disclosure - Stock-based compensation (Tables) Sheet http://www.cwco.com/role/DisclosureStockBasedCompensationTables Stock-based compensation (Tables) Tables http://www.cwco.com/role/DisclosureStockBasedCompensation 47 false false R48.htm 32103 - Disclosure - Supplemental disclosure of cash flow information (Tables) Sheet http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationTables Supplemental disclosure of cash flow information (Tables) Tables http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformation 48 false false R49.htm 40201 - Disclosure - Accounting policies - Additional Information (Details) Sheet http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails Accounting policies - Additional Information (Details) Details 49 false false R50.htm 40202 - Disclosure - Accounting policies - Cash and cash equivalents (Details) Sheet http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails Accounting policies - Cash and cash equivalents (Details) Details 50 false false R51.htm 40203 - Disclosure - Accounting policies - Property, plant and equipment (Details) Sheet http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails Accounting policies - Property, plant and equipment (Details) Details 51 false false R52.htm 40204 - Disclosure - Accounting policies - Goodwill and intangible assets (Details) Sheet http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails Accounting policies - Goodwill and intangible assets (Details) Details 52 false false R53.htm 40205 - Disclosure - Accounting policies - Investments and Other assets (Details) Sheet http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails Accounting policies - Investments and Other assets (Details) Details 53 false false R54.htm 40206 - Disclosure - Accounting policies - Disaggregated revenue (Details) Sheet http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails Accounting policies - Disaggregated revenue (Details) Details 54 false false R55.htm 40301 - Disclosure - Cash and cash equivalents (Details) Sheet http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails Cash and cash equivalents (Details) Details http://www.cwco.com/role/DisclosureCashAndCashEquivalentsTables 55 false false R56.htm 40401 - Disclosure - Accounts receivable, net (Details) Sheet http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails Accounts receivable, net (Details) Details http://www.cwco.com/role/DisclosureAccountsReceivableNetTables 56 false false R57.htm 40402 - Disclosure - Accounts receivable, net - Allowance for doubtful accounts (Details) Sheet http://www.cwco.com/role/DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails Accounts receivable, net - Allowance for doubtful accounts (Details) Details 57 false false R58.htm 40501 - Disclosure - Inventory (Details) Sheet http://www.cwco.com/role/DisclosureInventoryDetails Inventory (Details) Details http://www.cwco.com/role/DisclosureInventoryTables 58 false false R59.htm 40601 - Disclosure - Contracts in progress (Details) Sheet http://www.cwco.com/role/DisclosureContractsInProgressDetails Contracts in progress (Details) Details http://www.cwco.com/role/DisclosureContractsInProgressTables 59 false false R60.htm 40701 - Disclosure - Property, plant and equipment and construction in progress (Details) Sheet http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails Property, plant and equipment and construction in progress (Details) Details http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressTables 60 false false R61.htm 40702 - Disclosure - Property, plant and equipment and construction in progress - Additional Information (Details) Sheet http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressAdditionalInformationDetails Property, plant and equipment and construction in progress - Additional Information (Details) Details 61 false false R62.htm 40801 - Disclosure - Discontinued operations - Mexico project development- Narratives (Details) Sheet http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails Discontinued operations - Mexico project development- Narratives (Details) Details 62 false false R63.htm 40802 - Disclosure - Discontinued operations - Mexico project development (Details) Sheet http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails Discontinued operations - Mexico project development (Details) Details 63 false false R64.htm 40803 - Disclosure - Discontinued operations - Mexico project development - Financial Information (Details) Sheet http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentFinancialInformationDetails Discontinued operations - Mexico project development - Financial Information (Details) Details 64 false false R65.htm 40901 - Disclosure - Intangible assets - Costs and accumulated amortization (Details) Sheet http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails Intangible assets - Costs and accumulated amortization (Details) Details 65 false false R66.htm 40902 - Disclosure - Intangible assets - Amortization of intangible assets (Details) Sheet http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails Intangible assets - Amortization of intangible assets (Details) Details 66 false false R67.htm 40903 - Disclosure - Intangible assets (Details) Sheet http://www.cwco.com/role/DisclosureIntangibleAssetsDetails Intangible assets (Details) Details http://www.cwco.com/role/DisclosureIntangibleAssetsTables 67 false false R68.htm 41001 - Disclosure - Leases - Lease assets and liabilities (Details) Sheet http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails Leases - Lease assets and liabilities (Details) Details 68 false false R69.htm 41002 - Disclosure - Leases - Components of lease cost (Details) Sheet http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails Leases - Components of lease cost (Details) Details 69 false false R70.htm 41003 - Disclosure - Leases - Supplemental cash flow information (Details) Sheet http://www.cwco.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails Leases - Supplemental cash flow information (Details) Details 70 false false R71.htm 41004 - Disclosure - Leases - Future lease payments (Details) Sheet http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails Leases - Future lease payments (Details) Details 71 false false R72.htm 41101 - Disclosure - Income taxes - Components of income before income taxes (Details) Sheet http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails Income taxes - Components of income before income taxes (Details) Details 72 false false R73.htm 41102 - Disclosure - Income taxes - Provision for income taxes (Details) Sheet http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails Income taxes - Provision for income taxes (Details) Details 73 false false R74.htm 41103 - Disclosure - Income taxes - Reconciliation of federal tax rate to the effective rate (Details) Sheet http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails Income taxes - Reconciliation of federal tax rate to the effective rate (Details) Details 74 false false R75.htm 41104 - Disclosure - Income taxes - Net long-term deferred tax liability (Details) Sheet http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails Income taxes - Net long-term deferred tax liability (Details) Details 75 false false R76.htm 41105 - Disclosure - Income taxes - Additional Information (Details) Sheet http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails Income taxes - Additional Information (Details) Details 76 false false R77.htm 41201 - Disclosure - Earnings per share (Details) Sheet http://www.cwco.com/role/DisclosureEarningsPerShareDetails Earnings per share (Details) Details http://www.cwco.com/role/DisclosureEarningsPerShareTables 77 false false R78.htm 41301 - Disclosure - Dividends (Details) Sheet http://www.cwco.com/role/DisclosureDividendsDetails Dividends (Details) Details http://www.cwco.com/role/DisclosureDividendsTables 78 false false R79.htm 41401 - Disclosure - Segment information (Details) Sheet http://www.cwco.com/role/DisclosureSegmentInformationDetails Segment information (Details) Details http://www.cwco.com/role/DisclosureSegmentInformationTables 79 false false R80.htm 41402 - Disclosure - Segment information - Revenues earned by major geographic region and major customer (Details) Sheet http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails Segment information - Revenues earned by major geographic region and major customer (Details) Details 80 false false R81.htm 41403 - Disclosure - Segment information - Property, plant and equipment, net by major geographic region (Details) Sheet http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails Segment information - Property, plant and equipment, net by major geographic region (Details) Details 81 false false R82.htm 41404 - Disclosure - Segment information - Additional Information (Details) Sheet http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails Segment information - Additional Information (Details) Details 82 false false R83.htm 41501 - Disclosure - Cost of revenues and general and administrative expenses - Cost of revenues (Details) Sheet http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails Cost of revenues and general and administrative expenses - Cost of revenues (Details) Details 83 false false R84.htm 41502 - Disclosure - Cost of revenues and general and administrative expenses - General and administrative expenses (Details) Sheet http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails Cost of revenues and general and administrative expenses - General and administrative expenses (Details) Details 84 false false R85.htm 41601 - Disclosure - Stock-based compensation - Significant weighted average assumptions (Details) Sheet http://www.cwco.com/role/DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails Stock-based compensation - Significant weighted average assumptions (Details) Details 85 false false R86.htm 41602 - Disclosure - Stock-based compensation - Stock option activity (Details) Sheet http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails Stock-based compensation - Stock option activity (Details) Details 86 false false R87.htm 41603 - Disclosure - Stock-based compensation - Weighted average fair value of options at the date of grant and the intrinsic value of options exercised (Details) Sheet http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails Stock-based compensation - Weighted average fair value of options at the date of grant and the intrinsic value of options exercised (Details) Details 87 false false R88.htm 41604 - Disclosure - Stock-based compensation (Details) Sheet http://www.cwco.com/role/DisclosureStockBasedCompensationDetails Stock-based compensation (Details) Details http://www.cwco.com/role/DisclosureStockBasedCompensationTables 88 false false R89.htm 41701 - Disclosure - Retirement benefits (Details) Sheet http://www.cwco.com/role/DisclosureRetirementBenefitsDetails Retirement benefits (Details) Details http://www.cwco.com/role/DisclosureRetirementBenefits 89 false false R90.htm 41803 - Disclosure - Financial instruments - Additional Information (Details) Sheet http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails Financial instruments - Additional Information (Details) Details 90 false false R91.htm 41901 - Disclosure - Commitments and contingencies (Details) Sheet http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails Commitments and contingencies (Details) Details http://www.cwco.com/role/DisclosureCommitmentsAndContingencies 91 false false R92.htm 42001 - Disclosure - Related party transactions (Details) Sheet http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails Related party transactions (Details) Details http://www.cwco.com/role/DisclosureRelatedPartyTransactions 92 false false R93.htm 42101 - Disclosure - Supplemental disclosure of cash flow information (Details) Sheet http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails Supplemental disclosure of cash flow information (Details) Details http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationTables 93 false false R94.htm 42102 - Disclosure - Supplemental disclosure of cash flow information - Additional Information (Details) Sheet http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationAdditionalInformationDetails Supplemental disclosure of cash flow information - Additional Information (Details) Details 94 false false R95.htm 995410 - Disclosure - Pay vs Performance Disclosure Sheet http://xbrl.sec.gov/ecd/role/PvpDisclosure Pay vs Performance Disclosure Uncategorized 95 false false R96.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Cover 96 false false All Reports Book All Reports [ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 16 fact(s) appearing in ix:hidden were eligible for transformation: cwco:AdditionalConsecutiveIndividualRequisiteServicePeriod, cwco:NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue, cwco:NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised, cwco:NumberOfDaysOfAverageTradingPriceOfCommonStock, cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod, cwco:TermOfForeignExchangeRiskToDollarForCertainCurrencies, dei:CurrentFiscalYearEndDate, dei:EntityIncorporationStateCountryCode, us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife, us-gaap:CommonStockSharesIssued, us-gaap:CommonStockSharesOutstanding, us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare, us-gaap:PreferredStockSharesIssued, us-gaap:PreferredStockSharesOutstanding, us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 - cwco-20231231x10k.htm 9 [ix-0514-Hidden-Fact-Not-Referenced] WARN: 2 fact(s) appearing in ix:hidden were not referenced by any -sec-ix-hidden style property: us-gaap:CommitmentsAndContingencies - cwco-20231231x10k.htm 9 [dq-0712-Presentation-Base-Set-Order] Role '42102 - Disclosure - Supplemental disclosure of cash flow information - Additional Information (Details)', a level 4, Detail role, appears before '995410 - Disclosure - Pay vs Performance Disclosure', a level 1, Note role. cwco-20231231.xsd 321, https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd 30 cwco-20231231.xsd cwco-20231231_cal.xml cwco-20231231_def.xml cwco-20231231_lab.xml cwco-20231231_pre.xml cwco-20231231x10k.htm cwco-20231231x10k003.jpg http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 http://xbrl.sec.gov/ecd/2023 true true JSON 121 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "cwco-20231231x10k.htm": { "nsprefix": "cwco", "nsuri": "http://www.cwco.com/20231231", "dts": { "schema": { "local": [ "cwco-20231231.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://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd", "https://xbrl.sec.gov/country/2023/country-2023.xsd", "https://xbrl.sec.gov/currency/2023/currency-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd", "https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd", "https://xbrl.sec.gov/ecd/2023/ecd-sub-2023.xsd" ] }, "calculationLink": { "local": [ "cwco-20231231_cal.xml" ] }, "definitionLink": { "local": [ "cwco-20231231_def.xml" ] }, "labelLink": { "local": [ "cwco-20231231_lab.xml" ] }, "presentationLink": { "local": [ "cwco-20231231_pre.xml" ] }, "inline": { "local": [ "cwco-20231231x10k.htm" ] } }, "keyStandard": 359, "keyCustom": 81, "axisStandard": 30, "axisCustom": 3, "memberStandard": 41, "memberCustom": 65, "hidden": { "total": 23, "http://www.cwco.com/20231231": 6, "http://xbrl.sec.gov/dei/2023": 6, "http://fasb.org/us-gaap/2023": 11 }, "contextCount": 289, "entityCount": 1, "segmentCount": 111, "elementCount": 784, "unitCount": 7, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 1031, "http://xbrl.sec.gov/dei/2023": 39, "http://xbrl.sec.gov/ecd/2023": 4 }, "report": { "R1": { "role": "http://www.cwco.com/role/DocumentDocumentAndEntityInformation", "longName": "00090 - Document - Document and Entity Information", "shortName": "Document and Entity Information", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.cwco.com/role/StatementConsolidatedBalanceSheets", "longName": "00100 - Statement - CONSOLIDATED BALANCE SHEETS", "shortName": "CONSOLIDATED BALANCE SHEETS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:PrepaidExpenseAndOtherAssetsCurrent", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R3": { "role": "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical", "longName": "00105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)", "shortName": "CONSOLIDATED BALANCE SHEETS (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "unitRef": "Unit_Divide_USD_shares_U2JqVdFVAk6344peUFV1uw", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "us-gaap:PreferredStockParOrStatedValuePerShare", "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "unitRef": "Unit_Divide_USD_shares_U2JqVdFVAk6344peUFV1uw", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "us-gaap:PreferredStockParOrStatedValuePerShare", "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R4": { "role": "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome", "longName": "00200 - Statement - CONSOLIDATED STATEMENTS OF INCOME", "shortName": "CONSOLIDATED STATEMENTS OF INCOME", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:Revenues", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:InterestIncomeOther", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R5": { "role": "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical", "longName": "00205 - Statement - CONSOLIDATED STATEMENTS OF INCOME (Parenthetical)", "shortName": "CONSOLIDATED STATEMENTS OF INCOME (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_sweS9Ef7eUuZS25RP0eu9Q", "name": "us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_sweS9Ef7eUuZS25RP0eu9Q", "name": "us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R6": { "role": "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity", "longName": "00300 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "shortName": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_TNAzW0biik6sd9n1M-f4Xg", "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_TNAzW0biik6sd9n1M-f4Xg", "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R7": { "role": "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows", "longName": "00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS", "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "7", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:IncomeFromContinuingOperationsAttributableToNonControllingInterests", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R8": { "role": "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlowsParenthetical", "longName": "00405 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical)", "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "8", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_Qa-QPnL0Rk2Wr0NQenjypQ", "name": "us-gaap:StockIssuedDuringPeriodSharesIssuedForServices", "unitRef": "Unit_Standard_shares_DARamnsAzk2zkR92Uwd-GA", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": null }, "R9": { "role": "http://www.cwco.com/role/DisclosurePrincipalActivity", "longName": "10101 - Disclosure - Principal activity", "shortName": "Principal activity", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:NatureOfOperations", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:NatureOfOperations", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.cwco.com/role/DisclosureAccountingPolicies", "longName": "10201 - Disclosure - Accounting policies", "shortName": "Accounting policies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.cwco.com/role/DisclosureCashAndCashEquivalents", "longName": "10301 - Disclosure - Cash and cash equivalents", "shortName": "Cash and cash equivalents", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:CashAndCashEquivalentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:CashAndCashEquivalentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.cwco.com/role/DisclosureAccountsReceivableNet", "longName": "10401 - Disclosure - Accounts receivable, net", "shortName": "Accounts receivable, net", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.cwco.com/role/DisclosureInventory", "longName": "10501 - Disclosure - Inventory", "shortName": "Inventory", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.cwco.com/role/DisclosureContractsInProgress", "longName": "10601 - Disclosure - Contracts in progress", "shortName": "Contracts in progress", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgress", "longName": "10701 - Disclosure - Property, plant and equipment and construction in progress", "shortName": "Property, plant and equipment and construction in progress", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.cwco.com/role/DisclosureDiscontinuedOperations", "longName": "10801 - Disclosure - Discontinued operations", "shortName": "Discontinued operations", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.cwco.com/role/DisclosureIntangibleAssets", "longName": "10901 - Disclosure - Intangible assets", "shortName": "Intangible assets", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.cwco.com/role/DisclosureLeases", "longName": "11001 - Disclosure - Leases", "shortName": "Leases", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.cwco.com/role/DisclosureIncomeTaxes", "longName": "11101 - Disclosure - Income taxes", "shortName": "Income taxes", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.cwco.com/role/DisclosureEarningsPerShare", "longName": "11201 - Disclosure - Earnings per share", "shortName": "Earnings per share", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.cwco.com/role/DisclosureDividends", "longName": "11301 - Disclosure - Dividends", "shortName": "Dividends", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "21", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:DividendsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:DividendsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.cwco.com/role/DisclosureSegmentInformation", "longName": "11401 - Disclosure - Segment information", "shortName": "Segment information", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "22", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R23": { "role": "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpenses", "longName": "11501 - Disclosure - Cost of revenues and general and administrative expenses", "shortName": "Cost of revenues and general and administrative expenses", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "23", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.cwco.com/role/DisclosureStockBasedCompensation", "longName": "11601 - Disclosure - Stock-based compensation", "shortName": "Stock-based compensation", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "24", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.cwco.com/role/DisclosureRetirementBenefits", "longName": "11701 - Disclosure - Retirement benefits", "shortName": "Retirement benefits", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "25", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.cwco.com/role/DisclosureFinancialInstruments", "longName": "11801 - Disclosure - Financial instruments", "shortName": "Financial instruments", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "26", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:FinancialInstrumentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:FinancialInstrumentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.cwco.com/role/DisclosureCommitmentsAndContingencies", "longName": "11901 - Disclosure - Commitments and contingencies", "shortName": "Commitments and contingencies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "27", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.cwco.com/role/DisclosureRelatedPartyTransactions", "longName": "12001 - Disclosure - Related party transactions", "shortName": "Related party transactions", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "28", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformation", "longName": "12101 - Disclosure - Supplemental disclosure of cash flow information", "shortName": "Supplemental disclosure of cash flow information", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "29", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.cwco.com/role/DisclosureImpactOfRecentAccountingStandards", "longName": "12201 - Disclosure - Impact of recent accounting standards", "shortName": "Impact of recent accounting standards", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "30", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.cwco.com/role/DisclosureSubsequentEvents", "longName": "12301 - Disclosure - Subsequent events", "shortName": "Subsequent events", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "31", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies", "longName": "20202 - Disclosure - Accounting policies (Policies)", "shortName": "Accounting policies (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "32", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R33": { "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesTables", "longName": "30203 - Disclosure - Accounting policies (Tables)", "shortName": "Accounting policies (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "33", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R34": { "role": "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsTables", "longName": "30303 - Disclosure - Cash and cash equivalents (Tables)", "shortName": "Cash and cash equivalents (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "34", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:CashAndCashEquivalentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:CashAndCashEquivalentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R35": { "role": "http://www.cwco.com/role/DisclosureAccountsReceivableNetTables", "longName": "30403 - Disclosure - Accounts receivable, net (Tables)", "shortName": "Accounts receivable, net (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "35", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R36": { "role": "http://www.cwco.com/role/DisclosureInventoryTables", "longName": "30503 - Disclosure - Inventory (Tables)", "shortName": "Inventory (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "36", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfInventoryNoncurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfInventoryNoncurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R37": { "role": "http://www.cwco.com/role/DisclosureContractsInProgressTables", "longName": "30603 - Disclosure - Contracts in progress (Tables)", "shortName": "Contracts in progress (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "37", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R38": { "role": "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressTables", "longName": "30703 - Disclosure - Property, plant and equipment and construction in progress (Tables)", "shortName": "Property, plant and equipment and construction in progress (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "38", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R39": { "role": "http://www.cwco.com/role/DisclosureDiscontinuedOperationsTables", "longName": "30803 - Disclosure - Discontinued operations (Tables)", "shortName": "Discontinued operations (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "39", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R40": { "role": "http://www.cwco.com/role/DisclosureIntangibleAssetsTables", "longName": "30903 - Disclosure - Intangible assets (Tables)", "shortName": "Intangible assets (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "40", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R41": { "role": "http://www.cwco.com/role/DisclosureLeasesTables", "longName": "31003 - Disclosure - Leases (Tables)", "shortName": "Leases (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "41", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R42": { "role": "http://www.cwco.com/role/DisclosureIncomeTaxesTables", "longName": "31103 - Disclosure - Income taxes (Tables)", "shortName": "Income taxes (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "42", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R43": { "role": "http://www.cwco.com/role/DisclosureEarningsPerShareTables", "longName": "31203 - Disclosure - Earnings per share (Tables)", "shortName": "Earnings per share (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "43", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R44": { "role": "http://www.cwco.com/role/DisclosureDividendsTables", "longName": "31303 - Disclosure - Dividends (Tables)", "shortName": "Dividends (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "44", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:DividendsDeclaredTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "cwco:DividendsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:DividendsDeclaredTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "cwco:DividendsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R45": { "role": "http://www.cwco.com/role/DisclosureSegmentInformationTables", "longName": "31403 - Disclosure - Segment information (Tables)", "shortName": "Segment information (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "45", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R46": { "role": "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesTables", "longName": "31503 - Disclosure - Cost of revenues and general and administrative expenses (Tables)", "shortName": "Cost of revenues and general and administrative expenses (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "46", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R47": { "role": "http://www.cwco.com/role/DisclosureStockBasedCompensationTables", "longName": "31603 - Disclosure - Stock-based compensation (Tables)", "shortName": "Stock-based compensation (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "47", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R48": { "role": "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationTables", "longName": "32103 - Disclosure - Supplemental disclosure of cash flow information (Tables)", "shortName": "Supplemental disclosure of cash flow information (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "48", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:ScheduleOfSupplementalDisclosureOfCashFlowInformation", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:ScheduleOfSupplementalDisclosureOfCashFlowInformation", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R49": { "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails", "longName": "40201 - Disclosure - Accounting policies - Additional Information (Details)", "shortName": "Accounting policies - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "As_Of_12_31_2022_RItKiCsaxUGajHjldj9VUg", "name": "us-gaap:IntangibleAssetsNetExcludingGoodwill", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2022_To_12_31_2022_EcTJ0LAll06SrhWWx2wNrA", "name": "us-gaap:InterestCostsCapitalized", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R50": { "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails", "longName": "40202 - Disclosure - Accounting policies - Cash and cash equivalents (Details)", "shortName": "Accounting policies - Cash and cash equivalents (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ForeignCurrencyTransactionGainLossBeforeTax", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ForeignCurrencyTransactionGainLossBeforeTax", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R51": { "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails", "longName": "40203 - Disclosure - Accounting policies - Property, plant and equipment (Details)", "shortName": "Accounting policies - Property, plant and equipment (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "As_Of_12_31_2023_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_xg-IH3syPku2ddfYjRWQXA", "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "td", "tr", "table", "cwco:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock", "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_xg-IH3syPku2ddfYjRWQXA", "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "td", "tr", "table", "cwco:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock", "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R52": { "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails", "longName": "40204 - Disclosure - Accounting policies - Goodwill and intangible assets (Details)", "shortName": "Accounting policies - Goodwill and intangible assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "As_Of_12_31_2022_RItKiCsaxUGajHjldj9VUg", "name": "us-gaap:Goodwill", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2022_To_12_31_2022_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_RZ6AahYn80ivhBNdjHme-w", "name": "cwco:EstimatedFairValueCarryingAmountExceededPercentage", "unitRef": "Unit_Standard_pure_fZragFG30U-TLWJuZOecdg", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R53": { "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails", "longName": "40205 - Disclosure - Accounting policies - Investments and Other assets (Details)", "shortName": "Accounting policies - Investments and Other assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:CriteriaForRecognizingInvestmentAtCost", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "us-gaap:InvestmentPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:CriteriaForRecognizingInvestmentAtCost", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "us-gaap:InvestmentPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R54": { "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails", "longName": "40206 - Disclosure - Accounting policies - Disaggregated revenue (Details)", "shortName": "Accounting policies - Disaggregated revenue (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:Revenues", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_srt_RangeAxis_srt_MinimumMember_bCJpIP7nXUi6jRhADAlrHA", "name": "cwco:NumberOfDaysAfterConsumptionBillingsAreCollected", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "us-gaap:RevenueRecognitionPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R55": { "role": "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails", "longName": "40301 - Disclosure - Cash and cash equivalents (Details)", "shortName": "Cash and cash equivalents (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:Cash", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock", "us-gaap:CashAndCashEquivalentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:Cash", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock", "us-gaap:CashAndCashEquivalentsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R56": { "role": "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails", "longName": "40401 - Disclosure - Accounts receivable, net (Details)", "shortName": "Accounts receivable, net (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "cwco:AccountsReceivableTradeCurrent", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "cwco:AccountsReceivableTradeCurrent", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R57": { "role": "http://www.cwco.com/role/DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails", "longName": "40402 - Disclosure - Accounts receivable, net - Allowance for doubtful accounts (Details)", "shortName": "Accounts receivable, net - Allowance for doubtful accounts (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "57", "firstAnchor": { "contextRef": "As_Of_12_31_2022_RItKiCsaxUGajHjldj9VUg", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R58": { "role": "http://www.cwco.com/role/DisclosureInventoryDetails", "longName": "40501 - Disclosure - Inventory (Details)", "shortName": "Inventory (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "58", "firstAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:InventoryGross", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryNoncurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:InventoryGross", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryNoncurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R59": { "role": "http://www.cwco.com/role/DisclosureContractsInProgressDetails", "longName": "40601 - Disclosure - Contracts in progress (Details)", "shortName": "Contracts in progress (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "59", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "cwco:ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "cwco:ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R60": { "role": "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails", "longName": "40701 - Disclosure - Property, plant and equipment and construction in progress (Details)", "shortName": "Property, plant and equipment and construction in progress (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "60", "firstAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:PropertyPlantAndEquipmentGross", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:PropertyPlantAndEquipmentGross", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R61": { "role": "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressAdditionalInformationDetails", "longName": "40702 - Disclosure - Property, plant and equipment and construction in progress - Additional Information (Details)", "shortName": "Property, plant and equipment and construction in progress - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "61", "firstAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "cwco:CapitalCommitments", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "cwco:CapitalCommitments", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R62": { "role": "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails", "longName": "40801 - Disclosure - Discontinued operations - Mexico project development- Narratives (Details)", "shortName": "Discontinued operations - Mexico project development- Narratives (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "62", "firstAnchor": { "contextRef": "Duration_6_29_2020_To_6_29_2020_LI_ENJere06edie18VaaEQ", "name": "cwco:NumberOfDaysToSubmitListOfNonRecoverableExpenses", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_6_29_2020_To_6_29_2020_LI_ENJere06edie18VaaEQ", "name": "cwco:NumberOfDaysToSubmitListOfNonRecoverableExpenses", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R63": { "role": "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails", "longName": "40802 - Disclosure - Discontinued operations - Mexico project development (Details)", "shortName": "Discontinued operations - Mexico project development (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "63", "firstAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_BTGG2WU7MECvrJuhqcESEQ", "name": "us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R64": { "role": "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentFinancialInformationDetails", "longName": "40803 - Disclosure - Discontinued operations - Mexico project development - Financial Information (Details)", "shortName": "Discontinued operations - Mexico project development - Financial Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "64", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:IncomeLossFromDiscontinuedOperations", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_sK0weHPFI02j3EXJiUm4kA", "name": "us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R65": { "role": "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails", "longName": "40901 - Disclosure - Intangible assets - Costs and accumulated amortization (Details)", "shortName": "Intangible assets - Costs and accumulated amortization (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "65", "firstAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R66": { "role": "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails", "longName": "40902 - Disclosure - Intangible assets - Amortization of intangible assets (Details)", "shortName": "Intangible assets - Amortization of intangible assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "66", "firstAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R67": { "role": "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails", "longName": "40903 - Disclosure - Intangible assets (Details)", "shortName": "Intangible assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "67", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:AmortizationOfIntangibleAssets", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:AmortizationOfIntangibleAssets", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R68": { "role": "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails", "longName": "41001 - Disclosure - Leases - Lease assets and liabilities (Details)", "shortName": "Leases - Lease assets and liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "68", "firstAnchor": { "contextRef": "As_Of_12_31_2022_RItKiCsaxUGajHjldj9VUg", "name": "cwco:DisposalGroupIncludingDiscontinuedOperationLeaseCurrent", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "cwco:LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2022_RItKiCsaxUGajHjldj9VUg", "name": "cwco:DisposalGroupIncludingDiscontinuedOperationLeaseCurrent", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "cwco:LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R69": { "role": "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails", "longName": "41002 - Disclosure - Leases - Components of lease cost (Details)", "shortName": "Leases - Components of lease cost (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "69", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:OperatingLeaseCost", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:OperatingLeaseCost", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R70": { "role": "http://www.cwco.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails", "longName": "41003 - Disclosure - Leases - Supplemental cash flow information (Details)", "shortName": "Leases - Supplemental cash flow information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "70", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:OperatingLeasePayments", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:OperatingLeasePayments", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R71": { "role": "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails", "longName": "41004 - Disclosure - Leases - Future lease payments (Details)", "shortName": "Leases - Future lease payments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "71", "firstAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R72": { "role": "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails", "longName": "41101 - Disclosure - Income taxes - Components of income before income taxes (Details)", "shortName": "Income taxes - Components of income before income taxes (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "72", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R73": { "role": "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails", "longName": "41102 - Disclosure - Income taxes - Provision for income taxes (Details)", "shortName": "Income taxes - Provision for income taxes (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "73", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R74": { "role": "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails", "longName": "41103 - Disclosure - Income taxes - Reconciliation of federal tax rate to the effective rate (Details)", "shortName": "Income taxes - Reconciliation of federal tax rate to the effective rate (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "74", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "unitRef": "Unit_Standard_pure_fZragFG30U-TLWJuZOecdg", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "unitRef": "Unit_Standard_pure_fZragFG30U-TLWJuZOecdg", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R75": { "role": "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails", "longName": "41104 - Disclosure - Income taxes - Net long-term deferred tax liability (Details)", "shortName": "Income taxes - Net long-term deferred tax liability (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "75", "firstAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R76": { "role": "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails", "longName": "41105 - Disclosure - Income taxes - Additional Information (Details)", "shortName": "Income taxes - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "76", "firstAnchor": { "contextRef": "As_Of_12_31_2023_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_oZf2UDcG-02dOecI10eFEg", "name": "us-gaap:OperatingLossCarryforwards", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_oZf2UDcG-02dOecI10eFEg", "name": "us-gaap:OperatingLossCarryforwards", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R77": { "role": "http://www.cwco.com/role/DisclosureEarningsPerShareDetails", "longName": "41201 - Disclosure - Earnings per share (Details)", "shortName": "Earnings per share (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "77", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:IncomeLossFromContinuingOperations", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:DividendsPreferredStock", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R78": { "role": "http://www.cwco.com/role/DisclosureDividendsDetails", "longName": "41301 - Disclosure - Dividends (Details)", "shortName": "Dividends (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "78", "firstAnchor": { "contextRef": "Duration_10_1_2022_To_12_31_2022_9A6Cj9cX-UixX4BZYqUaog", "name": "cwco:DividendsPerShareDeclared", "unitRef": "Unit_Divide_USD_shares_U2JqVdFVAk6344peUFV1uw", "xsiNil": "false", "lang": null, "decimals": "3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:DividendsDeclaredTableTextBlock", "cwco:DividendsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_10_1_2022_To_12_31_2022_9A6Cj9cX-UixX4BZYqUaog", "name": "cwco:DividendsPerShareDeclared", "unitRef": "Unit_Divide_USD_shares_U2JqVdFVAk6344peUFV1uw", "xsiNil": "false", "lang": null, "decimals": "3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:DividendsDeclaredTableTextBlock", "cwco:DividendsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R79": { "role": "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "longName": "41401 - Disclosure - Segment information (Details)", "shortName": "Segment information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "79", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:Revenues", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "cwco:InventoryCurrentAndNoncurrent", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R80": { "role": "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails", "longName": "41402 - Disclosure - Segment information - Revenues earned by major geographic region and major customer (Details)", "shortName": "Segment information - Revenues earned by major geographic region and major customer (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "80", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:Revenues", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_srt_StatementGeographicalAxis_country_KY_oVqD_Y1CGEmNhMe9zFyvEA", "name": "us-gaap:Revenues", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R81": { "role": "http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails", "longName": "41403 - Disclosure - Segment information - Property, plant and equipment, net by major geographic region (Details)", "shortName": "Segment information - Property, plant and equipment, net by major geographic region (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "81", "firstAnchor": { "contextRef": "As_Of_12_31_2023_LfRjMXDwxk6Ghw6VpN99TA", "name": "us-gaap:PropertyPlantAndEquipmentNet", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_srt_StatementGeographicalAxis_country_KY_U-TBlj1SgEmUZr8QXpGmdw", "name": "us-gaap:PropertyPlantAndEquipmentNet", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:LongLivedAssetsByGeographicAreasTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R82": { "role": "http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails", "longName": "41404 - Disclosure - Segment information - Additional Information (Details)", "shortName": "Segment information - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "82", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_RMCK5asuw0-7aD0-bGUb1Q", "name": "us-gaap:DepreciationDepletionAndAmortization", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_RMCK5asuw0-7aD0-bGUb1Q", "name": "us-gaap:DepreciationDepletionAndAmortization", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R83": { "role": "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails", "longName": "41501 - Disclosure - Cost of revenues and general and administrative expenses - Cost of revenues (Details)", "shortName": "Cost of revenues and general and administrative expenses - Cost of revenues (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "83", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:CostOfRevenue", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_SubcontractorAndOtherProjectCostsMember_0mA3wRzFUUGokpsyN3RgtQ", "name": "us-gaap:CostOfRevenue", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock", "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R84": { "role": "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails", "longName": "41502 - Disclosure - Cost of revenues and general and administrative expenses - General and administrative expenses (Details)", "shortName": "Cost of revenues and general and administrative expenses - General and administrative expenses (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "84", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:GeneralAndAdministrativeExpense", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_EmployeeCostsMember_4X8mNav9lkC2b35cMVGU8Q", "name": "us-gaap:GeneralAndAdministrativeExpense", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock", "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R85": { "role": "http://www.cwco.com/role/DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails", "longName": "41601 - Disclosure - Stock-based compensation - Significant weighted average assumptions (Details)", "shortName": "Stock-based compensation - Significant weighted average assumptions (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "85", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "unitRef": "Unit_Standard_pure_fZragFG30U-TLWJuZOecdg", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "unitRef": "Unit_Standard_pure_fZragFG30U-TLWJuZOecdg", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R86": { "role": "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails", "longName": "41602 - Disclosure - Stock-based compensation - Stock option activity (Details)", "shortName": "Stock-based compensation - Stock option activity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "86", "firstAnchor": { "contextRef": "As_Of_12_31_2022_RItKiCsaxUGajHjldj9VUg", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "unitRef": "Unit_Standard_shares_DARamnsAzk2zkR92Uwd-GA", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2022_RItKiCsaxUGajHjldj9VUg", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "unitRef": "Unit_Standard_shares_DARamnsAzk2zkR92Uwd-GA", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R87": { "role": "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails", "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)", "shortName": "Stock-based compensation - Weighted average fair value of options at the date of grant and the intrinsic value of options exercised (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "87", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R88": { "role": "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails", "longName": "41604 - Disclosure - Stock-based compensation (Details)", "shortName": "Stock-based compensation (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "88", "firstAnchor": { "contextRef": "Duration_1_1_2022_To_12_31_2022_EcTJ0LAll06SrhWWx2wNrA", "name": "cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2022_To_12_31_2022_EcTJ0LAll06SrhWWx2wNrA", "name": "cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R89": { "role": "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails", "longName": "41701 - Disclosure - Retirement benefits (Details)", "shortName": "Retirement benefits (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "89", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_RetirementPlanTypeAxis_us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember_Q_jMcvDz_kiE80N0gBPEWw", "name": "us-gaap:DefinedContributionPlanCostRecognized", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_RetirementPlanTypeAxis_us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember_Q_jMcvDz_kiE80N0gBPEWw", "name": "us-gaap:DefinedContributionPlanCostRecognized", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R90": { "role": "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails", "longName": "41803 - Disclosure - Financial instruments - Additional Information (Details)", "shortName": "Financial instruments - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "90", "firstAnchor": null, "uniqueAnchor": null }, "R91": { "role": "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails", "longName": "41901 - Disclosure - Commitments and contingencies (Details)", "shortName": "Commitments and contingencies (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "91", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:EmploymentAgreementBaseAnnualSalaries", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "cwco:EmploymentAgreementBaseAnnualSalaries", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R92": { "role": "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails", "longName": "42001 - Disclosure - Related party transactions (Details)", "shortName": "Related party transactions (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "92", "firstAnchor": { "contextRef": "As_Of_12_31_2022_RItKiCsaxUGajHjldj9VUg", "name": "us-gaap:AccountsPayableCurrent", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2022_To_12_31_2022_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_juQpJRyJY065hJWJ-nd4tA", "name": "us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "unique": true } }, "R93": { "role": "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails", "longName": "42101 - Disclosure - Supplemental disclosure of cash flow information (Details)", "shortName": "Supplemental disclosure of cash flow information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "93", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:InterestPaidNet", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "cwco:ScheduleOfSupplementalDisclosureOfCashFlowInformation", "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:InterestPaidNet", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "cwco:ScheduleOfSupplementalDisclosureOfCashFlowInformation", "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } }, "R94": { "role": "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationAdditionalInformationDetails", "longName": "42102 - Disclosure - Supplemental disclosure of cash flow information - Additional Information (Details)", "shortName": "Supplemental disclosure of cash flow information - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "94", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_Qa-QPnL0Rk2Wr0NQenjypQ", "name": "us-gaap:StockIssuedDuringPeriodSharesIssuedForServices", "unitRef": "Unit_Standard_shares_DARamnsAzk2zkR92Uwd-GA", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": null }, "R95": { "role": "http://xbrl.sec.gov/ecd/role/PvpDisclosure", "longName": "995410 - Disclosure - Pay vs Performance Disclosure", "shortName": "Pay vs Performance Disclosure", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Uncategorized", "order": "95", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_Scq0YKnd-0-KYTiygG7JfA", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true }, "uniqueAnchor": null }, "R96": { "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "longName": "995445 - Disclosure - Insider Trading Arrangements", "shortName": "Insider Trading Arrangements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Cover", "order": "96", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_RHYVEd4tQEeGe8tuhk48Xg", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cwco-20231231x10k.htm", "first": true, "unique": true } } }, "tag": { "cwco_AboveMarketPriceMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "AboveMarketPriceMember", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" ], "lang": { "en-us": { "role": { "label": "Above Market Price [Member]" } } }, "auth_ref": [] }, "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "label": "Accounting policies" } } }, "auth_ref": [] }, "cwco_AccountsPayableAccruedExpensesAndOtherCurrentLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "AccountsPayableAccruedExpensesAndOtherCurrentLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "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, Accrued Expenses and Other Current Liabilities, Current", "terseLabel": "Accounts payable, accrued expenses and other current liabilities" } } }, "auth_ref": [] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableCurrent", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts Payable, Related Parties, Current", "terseLabel": "Accounts payable outstanding", "verboseLabel": "Accounts payable - related parties", "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r31", "r937" ] }, "us-gaap_AccountsReceivableGrossCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableGrossCurrent", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails": { "parentTag": "us-gaap_AccountsReceivableNetCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Gross, Current", "totalLabel": "Accounts Receivable, Gross, Current", "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." } } }, "auth_ref": [ "r247", "r350", "r351", "r911" ] }, "us-gaap_AccountsReceivableNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNet", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Net", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business." } } }, "auth_ref": [ "r771", "r891", "r942", "r1102" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 }, "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails", "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Net, Current", "totalLabel": "Accounts receivable, net", "verboseLabel": "Accounts receivable, net", "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." } } }, "auth_ref": [ "r350", "r351" ] }, "cwco_AccountsReceivableOtherCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "AccountsReceivableOtherCurrent", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails": { "parentTag": "us-gaap_AccountsReceivableGrossCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails" ], "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" } } }, "auth_ref": [] }, "cwco_AccountsReceivableTradeCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "AccountsReceivableTradeCurrent", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails": { "parentTag": "us-gaap_AccountsReceivableGrossCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_AccruedEmployeeBenefitsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedEmployeeBenefitsCurrent", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accrued Employee Benefits, Current", "verboseLabel": "Accrued compensation", "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)." } } }, "auth_ref": [ "r33" ] }, "us-gaap_AccumulatedAmortizationOfOtherDeferredCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedAmortizationOfOtherDeferredCosts", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Accumulated Amortization of Other Deferred Costs", "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." } } }, "auth_ref": [ "r1040" ] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "verboseLabel": "Less accumulated depreciation", "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services." } } }, "auth_ref": [ "r74", "r237", "r688" ] }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Acquired Finite-lived Intangible Assets, Weighted Average Useful Life", "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." } } }, "auth_ref": [ "r171" ] }, "ecd_Additional402vDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Additional402vDisclosureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Additional 402(v) Disclosure [Text Block]", "terseLabel": "Additional 402(v) Disclosure" } } }, "auth_ref": [ "r990" ] }, "cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "AdditionalConsecutiveIndividualRequisiteServicePeriod", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_AdditionalPaidInCapital": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapital", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Additional Paid in Capital", "verboseLabel": "Additional paid-in capital", "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." } } }, "auth_ref": [ "r144", "r937", "r1108" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Additional paid-in capital [Member]", "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." } } }, "auth_ref": [ "r551", "r552", "r553", "r736", "r1049", "r1050", "r1051", "r1085", "r1110" ] }, "ecd_AdjToCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation Amount", "terseLabel": "Adjustment to Compensation, Amount" } } }, "auth_ref": [ "r996" ] }, "ecd_AdjToCompAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToCompAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation [Axis]", "terseLabel": "Adjustment to Compensation:" } } }, "auth_ref": [ "r996" ] }, "ecd_AdjToNonPeoNeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToNonPeoNeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]", "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote" } } }, "auth_ref": [ "r996" ] }, "ecd_AdjToPeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToPeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment To PEO Compensation, Footnote [Text Block]", "terseLabel": "Adjustment To PEO Compensation, Footnote" } } }, "auth_ref": [ "r996" ] }, "us-gaap_AdjustmentForAmortizationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentForAmortizationAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" ], "lang": { "en-us": { "role": { "label": "Amortization [Abstract]", "terseLabel": "Accumulated amortization" } } }, "auth_ref": [] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Noncash Expense", "terseLabel": "Compensation expense relating to stock and stock option grants", "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement." } } }, "auth_ref": [ "r87", "r88", "r517" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Adjustments to reconcile net income to net cash provided by operating activities" } } }, "auth_ref": [] }, "cwco_AerexIndustriesIncMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "AerexIndustriesIncMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to Aerex Industries, Inc.", "label": "Aerex" } } }, "auth_ref": [] }, "ecd_AggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Amount", "terseLabel": "Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r960", "r972", "r982", "r1008" ] }, "ecd_AggtErrCompNotYetDeterminedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AggtErrCompNotYetDeterminedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]", "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined" } } }, "auth_ref": [ "r963", "r975", "r985", "r1011" ] }, "cwco_AguasDeRosaritoSapiDeCvMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "AguasDeRosaritoSapiDeCvMember", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "Aguas de Rosarito S.A.P.I. de C.V [Member]" } } }, "auth_ref": [] }, "ecd_AllAdjToCompMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllAdjToCompMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Adjustments to Compensation [Member]", "terseLabel": "All Adjustments to Compensation" } } }, "auth_ref": [ "r996" ] }, "currency_AllCurrenciesDomain": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/currency/2023", "localname": "AllCurrenciesDomain", "presentation": [ "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "All Currencies [Domain]" } } }, "auth_ref": [] }, "ecd_AllExecutiveCategoriesMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllExecutiveCategoriesMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Executive Categories [Member]", "terseLabel": "All Executive Categories" } } }, "auth_ref": [ "r1003" ] }, "ecd_AllIndividualsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllIndividualsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Individuals [Member]", "terseLabel": "All Individuals" } } }, "auth_ref": [ "r967", "r976", "r986", "r1003", "r1012", "r1016", "r1024" ] }, "ecd_AllTradingArrangementsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllTradingArrangementsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "All Trading Arrangements [Member]", "terseLabel": "All Trading Arrangements" } } }, "auth_ref": [ "r1022" ] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Allocated Share-based Compensation Expense", "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized." } } }, "auth_ref": [ "r546", "r554" ] }, "us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllocatedShareBasedCompensationExpenseNetOfTax", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Allocated Share-based Compensation Expense, Net of Tax", "documentation": "Amount, after tax, of expense for award under share-based payment arrangement." } } }, "auth_ref": [] }, "us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountsReceivableNetTables" ], "lang": { "en-us": { "role": { "label": "Allowance for Credit Losses on Financing Receivables [Table Text Block]", "terseLabel": "Schedule of Allowance for doubtful accounts", "documentation": "Tabular disclosure of allowance for credit loss on financing receivable." } } }, "auth_ref": [ "r63", "r1060" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails": { "parentTag": "us-gaap_AccountsReceivableNetCurrent", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails", "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails" ], "lang": { "en-us": { "role": { "label": "Allowance for Doubtful Accounts Receivable, Current", "negatedLabel": "Allowance for doubtful accounts", "periodEndLabel": "Ending allowance for doubtful accounts", "periodStartLabel": "Opening allowance for doubtful accounts", "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current." } } }, "auth_ref": [ "r248", "r354", "r365" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableRecoveries", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Allowance for Credit Loss, Recovery", "terseLabel": "Recovery of accounts written off", "documentation": "Amount of increase in allowance for credit loss on accounts receivable, from recovery." } } }, "auth_ref": [ "r368" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableWriteOffs", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails" ], "lang": { "en-us": { "role": { "label": "Allowance for Doubtful Accounts Receivable, Write-offs", "negatedLabel": "Accounts written off during the year", "documentation": "Amount of direct write-downs of accounts receivable charged against the allowance." } } }, "auth_ref": [ "r367" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AmendmentFlag", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "us-gaap_AmortizationOfIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AmortizationOfIntangibleAssets", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Amortization of Intangible Assets", "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." } } }, "auth_ref": [ "r12", "r67", "r72" ] }, "cwco_AmortizationOfIntangiblesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "AmortizationOfIntangiblesMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "label": "Amortization of intangibles [Member]" } } }, "auth_ref": [] }, "cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem": { "xbrltype": "volumeItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_AreaOfLand": { "xbrltype": "areaItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AreaOfLand", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "Area of Land", "documentation": "Area of land held." } } }, "auth_ref": [] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Assets", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets", "totalLabel": "Total assets", "verboseLabel": "Total assets", "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." } } }, "auth_ref": [ "r192", "r241", "r270", "r320", "r335", "r341", "r360", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r588", "r592", "r611", "r678", "r776", "r937", "r950", "r1071", "r1072", "r1092" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets [Abstract]", "verboseLabel": "ASSETS" } } }, "auth_ref": [] }, "cwco_AssetsContinuedOperation": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "AssetsContinuedOperation", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount classified as assets attributable to continued operation.", "label": "Assets Continued Operation", "terseLabel": "Total segment assets" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets, Current", "totalLabel": "Total current assets", "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." } } }, "auth_ref": [ "r232", "r251", "r270", "r360", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r588", "r592", "r611", "r937", "r1071", "r1072", "r1092" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets, Current [Abstract]", "terseLabel": "Current assets", "verboseLabel": "Current" } } }, "auth_ref": [] }, "us-gaap_AssetsNoncurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsNoncurrentAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Assets, Noncurrent [Abstract]", "verboseLabel": "Noncurrent" } } }, "auth_ref": [] }, "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsOfDisposalGroupIncludingDiscontinuedOperation", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails", "http://www.cwco.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "label": "Disposal Group, Including Discontinued Operation, Assets", "terseLabel": "Assets of discontinued operations", "totalLabel": "Total assets of discontinued operations", "documentation": "Amount classified as assets attributable to disposal group held for sale or disposed of." } } }, "auth_ref": [ "r5", "r117", "r133", "r178", "r230", "r231" ] }, "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Disposal Group, Including Discontinued Operation, Assets, Current", "verboseLabel": "Current assets of discontinued operations", "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." } } }, "auth_ref": [ "r5", "r117", "r133", "r176", "r178", "r230", "r231" ] }, "cwco_AtMarketPriceMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "AtMarketPriceMember", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" ], "lang": { "en-us": { "role": { "label": "At Market Price [Member]" } } }, "auth_ref": [] }, "dei_AuditorFirmId": { "xbrltype": "nonemptySequenceNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorFirmId", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Auditor Firm ID", "documentation": "PCAOB issued Audit Firm Identifier" } } }, "auth_ref": [ "r954", "r955", "r968" ] }, "dei_AuditorLocation": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorLocation", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Auditor Location" } } }, "auth_ref": [ "r954", "r955", "r968" ] }, "dei_AuditorName": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorName", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Auditor Name" } } }, "auth_ref": [ "r954", "r955", "r968" ] }, "ecd_AwardExrcPrice": { "xbrltype": "perShareItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardExrcPrice", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Exercise Price", "terseLabel": "Exercise Price" } } }, "auth_ref": [ "r1019" ] }, "ecd_AwardGrantDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardGrantDateFairValue", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Grant Date Fair Value", "terseLabel": "Fair Value as of Grant Date" } } }, "auth_ref": [ "r1020" ] }, "ecd_AwardTmgDiscLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgDiscLineItems", "lang": { "en-us": { "role": { "label": "Award Timing Disclosures [Line Items]", "terseLabel": "Award Timing Disclosures" } } }, "auth_ref": [ "r1015" ] }, "ecd_AwardTmgHowMnpiCnsdrdTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgHowMnpiCnsdrdTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing, How MNPI Considered [Text Block]", "terseLabel": "Award Timing, How MNPI Considered" } } }, "auth_ref": [ "r1015" ] }, "ecd_AwardTmgMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing Method [Text Block]", "terseLabel": "Award Timing Method" } } }, "auth_ref": [ "r1015" ] }, "ecd_AwardTmgMnpiCnsdrdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMnpiCnsdrdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Considered [Flag]", "terseLabel": "Award Timing MNPI Considered" } } }, "auth_ref": [ "r1015" ] }, "ecd_AwardTmgMnpiDiscTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMnpiDiscTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Disclosure [Text Block]", "terseLabel": "Award Timing MNPI Disclosure" } } }, "auth_ref": [ "r1015" ] }, "ecd_AwardTmgPredtrmndFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgPredtrmndFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing Predetermined [Flag]", "terseLabel": "Award Timing Predetermined" } } }, "auth_ref": [ "r1015" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AwardTypeAxis", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Type [Axis]", "terseLabel": "Award Type", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r520", "r521", "r522", "r523", "r524", "r525", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r537", "r538", "r539", "r540", "r541", "r542", "r543", "r544", "r545" ] }, "ecd_AwardUndrlygSecuritiesAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardUndrlygSecuritiesAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Underlying Securities Amount", "terseLabel": "Underlying Securities" } } }, "auth_ref": [ "r1018" ] }, "ecd_AwardsCloseToMnpiDiscIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r1017" ] }, "ecd_AwardsCloseToMnpiDiscTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table]", "terseLabel": "Awards Close in Time to MNPI Disclosures" } } }, "auth_ref": [ "r1016" ] }, "ecd_AwardsCloseToMnpiDiscTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]", "terseLabel": "Awards Close in Time to MNPI Disclosures, Table" } } }, "auth_ref": [ "r1016" ] }, "country_BS": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "BS", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails", "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" ], "lang": { "en-us": { "role": { "label": "Bahamas [Member]" } } }, "auth_ref": [] }, "currency_BSD": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/currency/2023", "localname": "BSD", "presentation": [ "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Bahamian dollar [Member]" } } }, "auth_ref": [] }, "cwco_BadDebtExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "BadDebtExpenseMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "documentation": "Bad debt expense.", "label": "Bad Debt Expense [Member]" } } }, "auth_ref": [] }, "cwco_BalanceSheetLocationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "BalanceSheetLocationAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "lang": { "en-us": { "role": { "documentation": "No definition available.", "label": "Balance Sheet location" } } }, "auth_ref": [] }, "us-gaap_BalanceSheetLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BalanceSheetLocationAxis", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Balance Sheet Location [Axis]", "documentation": "Information by location on balance sheet (statement of financial position)." } } }, "auth_ref": [] }, "us-gaap_BalanceSheetLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BalanceSheetLocationDomain", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Balance Sheet Location [Domain]", "documentation": "Location in the balance sheet (statement of financial position)." } } }, "auth_ref": [ "r104", "r105" ] }, "cwco_BankChargesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "BankChargesMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "documentation": "Bank charges.", "label": "Bank Charges [Member]" } } }, "auth_ref": [] }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BasisOfAccountingPolicyPolicyTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Basis of Accounting, Policy [Policy Text Block]", "terseLabel": "Basis of preparation", "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)." } } }, "auth_ref": [] }, "cwco_BelowMarketPriceMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "BelowMarketPriceMember", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" ], "lang": { "en-us": { "role": { "label": "Below Market Price [Member]" } } }, "auth_ref": [] }, "cwco_BondPosted": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "BondPosted", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the amount of bond posted.", "label": "Bond Posted", "terseLabel": "Amount of bond posted" } } }, "auth_ref": [] }, "us-gaap_BuildingMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BuildingMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails", "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Building [Member]", "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities." } } }, "auth_ref": [ "r177" ] }, "cwco_BulkMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "BulkMember", "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" ], "lang": { "en-us": { "role": { "label": "Bulk [Member]" } } }, "auth_ref": [] }, "cwco_BulkRevenuesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "BulkRevenuesMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "label": "Bulk revenue [Member]" } } }, "auth_ref": [] }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAcquireeDomain", "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" ], "lang": { "en-us": { "role": { "label": "Business Acquisition, Acquiree [Domain]", "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." } } }, "auth_ref": [ "r586", "r926", "r929" ] }, "us-gaap_BusinessAcquisitionAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAxis", "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" ], "lang": { "en-us": { "role": { "label": "Business Acquisition [Axis]", "documentation": "Information by business combination or series of individually immaterial business combinations." } } }, "auth_ref": [ "r92", "r94", "r586", "r926", "r929" ] }, "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionPercentageOfVotingInterestsAcquired", "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" ], "lang": { "en-us": { "role": { "label": "Business Acquisition, Percentage of Voting Interests Acquired", "verboseLabel": "Ownership interest acquired", "documentation": "Percentage of voting equity interests acquired at the acquisition date in the business combination." } } }, "auth_ref": [ "r93" ] }, "us-gaap_BusinessCombinationConsiderationTransferred1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationConsiderationTransferred1", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Consideration Transferred", "terseLabel": "Amount of consideration paid", "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." } } }, "auth_ref": [ "r2", "r3", "r19" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill", "terseLabel": "Fair value of certain intangible assets", "documentation": "Amount of intangible assets, excluding goodwill, acquired at the acquisition date." } } }, "auth_ref": [ "r95" ] }, "cwco_BusinessDevelopmentExpensesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "BusinessDevelopmentExpensesMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "documentation": "Business development expenses.", "label": "Business Development Expenses [Member]" } } }, "auth_ref": [] }, "cwco_CapitalCommitments": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CapitalCommitments", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of capital commitments outstanding.", "label": "Capital Commitments" } } }, "auth_ref": [] }, "cwco_CapitalizedEngineeringLaborAndMaterialsCostMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CapitalizedEngineeringLaborAndMaterialsCostMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Capitalized Engineering Labor and Materials Cost [Member]" } } }, "auth_ref": [] }, "us-gaap_Cash": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Cash", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Cash", "terseLabel": "Bank accounts", "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." } } }, "auth_ref": [ "r208", "r681", "r747", "r770", "r937", "r950", "r1038" ] }, "us-gaap_CashAndCashEquivalentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAbstract", "lang": { "en-us": { "role": { "label": "Cash and cash equivalents" } } }, "auth_ref": [] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, at Carrying Value", "terseLabel": "Cash and cash equivalents", "verboseLabel": "Cash and cash equivalents at end of period", "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." } } }, "auth_ref": [ "r47", "r235", "r909" ] }, "us-gaap_CashAndCashEquivalentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAxis", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents [Axis]", "documentation": "Information by type of cash and cash equivalent balance." } } }, "auth_ref": [ "r235" ] }, "us-gaap_CashAndCashEquivalentsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsDisclosureTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureCashAndCashEquivalents" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents Disclosure [Text Block]", "terseLabel": "Cash and cash equivalents", "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." } } }, "auth_ref": [ "r235", "r681" ] }, "us-gaap_CashAndCashEquivalentsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsLineItems", "presentation": [ "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents [Line Items]", "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." } } }, "auth_ref": [] }, "us-gaap_CashAndCashEquivalentsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsPolicyTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, Policy [Policy Text Block]", "verboseLabel": "Cash and cash equivalents", "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." } } }, "auth_ref": [ "r48" ] }, "cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CashAndRestrictedCashEquivalentsHeldInForeignBank", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails" ], "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", "terseLabel": "Cash held in foreign bank accounts" } } }, "auth_ref": [] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "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", "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." } } }, "auth_ref": [ "r47", "r166", "r268" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents [Abstract]" } } }, "auth_ref": [] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "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", "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." } } }, "auth_ref": [ "r47", "r166", "r268" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect", "totalLabel": "Net increase (decrease) in cash and cash equivalents", "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." } } }, "auth_ref": [ "r4", "r166" ] }, "us-gaap_CashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashEquivalentsAtCarryingValue", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails", "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Cash Equivalents, at Carrying Value", "terseLabel": "Cash and cash equivalents", "verboseLabel": "Short term deposits", "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." } } }, "auth_ref": [ "r1038", "r1101" ] }, "us-gaap_CashFlowSupplementalDisclosuresTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashFlowSupplementalDisclosuresTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformation" ], "lang": { "en-us": { "role": { "label": "Cash Flow, Supplemental Disclosures [Text Block]", "terseLabel": "Supplemental disclosure of cash flow information", "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." } } }, "auth_ref": [ "r163" ] }, "us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash Provided by (Used in) Operating Activities, Discontinued Operations", "verboseLabel": "Net cash used in operating activities - discontinued operations", "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." } } }, "auth_ref": [ "r132", "r166" ] }, "us-gaap_CashUninsuredAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashUninsuredAmount", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Cash, Uninsured Amount", "terseLabel": "Deposits", "documentation": "The amount of cash as of the balance sheet date that is not insured by the Federal Deposit Insurance Corporation." } } }, "auth_ref": [] }, "cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit": { "xbrltype": "percentItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CaymanWaterRetailOperationsPercentageOfGrossProfit", "presentation": [ "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "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" } } }, "auth_ref": [] }, "cwco_CaymanWaterRetailOperationsPercentageOfRevenue": { "xbrltype": "percentItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CaymanWaterRetailOperationsPercentageOfRevenue", "presentation": [ "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the percentage of consolidated revenue from Cayman Water retail operations.", "label": "Cayman Water Retail Operations, Percentage Of Revenue" } } }, "auth_ref": [] }, "us-gaap_CertificatesOfDepositMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CertificatesOfDepositMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Certificate of deposit", "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." } } }, "auth_ref": [ "r18", "r943", "r944", "r945", "r946" ] }, "us-gaap_ChangeInAccountingEstimateByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ChangeInAccountingEstimateByTypeAxis", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails", "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Change in Accounting Estimate by Type [Axis]", "documentation": "Information by type of change in accounting estimate." } } }, "auth_ref": [ "r53", "r286" ] }, "us-gaap_ChangeInAccountingEstimateTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ChangeInAccountingEstimateTypeDomain", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails", "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Change in Accounting Estimate, Type [Domain]", "documentation": "Identification of the accounting estimate that was changed that had the effect of adjusting the carrying amount of an existing asset or liability, or that will alter the subsequent accounting for existing or future assets or liabilities." } } }, "auth_ref": [ "r53", "r286" ] }, "us-gaap_ChangeInAccountingMethodAccountedForAsChangeInEstimateMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ChangeInAccountingMethodAccountedForAsChangeInEstimateMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails", "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Change in Accounting Method Accounted for as Change in Estimate [Member]", "documentation": "A change from one acceptable accounting method to another based upon a revision in estimated future benefits or obligations." } } }, "auth_ref": [] }, "ecd_ChangedPeerGroupFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ChangedPeerGroupFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Changed Peer Group, Footnote [Text Block]", "terseLabel": "Changed Peer Group, Footnote" } } }, "auth_ref": [ "r994" ] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CityAreaCode", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "us-gaap_ClassOfStockDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ClassOfStockDomain", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails", "http://www.cwco.com/role/DisclosureInventoryDetails", "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails", "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets", "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlowsParenthetical", "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Class of Stock [Domain]", "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." } } }, "auth_ref": [ "r225", "r244", "r245", "r246", "r270", "r297", "r301", "r306", "r308", "r314", "r315", "r360", "r401", "r403", "r404", "r405", "r408", "r409", "r411", "r412", "r413", "r414", "r415", "r611", "r725", "r726", "r727", "r728", "r736", "r737", "r738", "r739", "r740", "r741", "r742", "r743", "r744", "r745", "r746", "r748", "r762", "r785", "r809", "r884", "r885", "r886", "r887", "r888", "r1031", "r1046", "r1053" ] }, "cwco_ClosingPriceOfCommonShares": { "xbrltype": "perShareItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ClosingPriceOfCommonShares", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "documentation": "Closing price of the common shares.", "label": "Closing Price of Common Shares" } } }, "auth_ref": [] }, "ecd_CoSelectedMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CoSelectedMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Amount", "terseLabel": "Company Selected Measure Amount" } } }, "auth_ref": [ "r995" ] }, "ecd_CoSelectedMeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CoSelectedMeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Name", "terseLabel": "Company Selected Measure Name" } } }, "auth_ref": [ "r995" ] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingencies", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies", "verboseLabel": "Commitments and contingencies", "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." } } }, "auth_ref": [ "r36", "r115", "r680", "r761" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Commitments and contingencies." } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureCommitmentsAndContingencies" ], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies Disclosure [Text Block]", "terseLabel": "Commitments and contingencies", "documentation": "The entire disclosure for commitments and contingencies." } } }, "auth_ref": [ "r181", "r395", "r396", "r893", "r1066" ] }, "cwco_CommitmentsAndContingenciesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CommitmentsAndContingenciesLineItems", "presentation": [ "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "documentation": "na", "label": "Commitments And Contingencies [ Line Items ]", "terseLabel": "Contingencies" } } }, "auth_ref": [] }, "cwco_CommitmentsAndContingenciesTable": { "xbrltype": "stringItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CommitmentsAndContingenciesTable", "presentation": [ "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Commitments And Contingencies [Table]" } } }, "auth_ref": [] }, "us-gaap_CommonClassAMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonClassAMember", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets", "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Class A [Member]", "documentation": "Classification of common stock representing ownership interest in a corporation." } } }, "auth_ref": [ "r1110" ] }, "us-gaap_CommonClassBMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonClassBMember", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets", "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Class B [Member]", "documentation": "Classification of common stock that has different rights than Common Class A, representing ownership interest in a corporation." } } }, "auth_ref": [ "r1110" ] }, "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockCapitalSharesReservedForFutureIssuance", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Common Stock, Capital Shares Reserved for Future Issuance", "documentation": "Aggregate number of common shares reserved for future issuance." } } }, "auth_ref": [ "r37" ] }, "us-gaap_CommonStockDividendsPerShareDeclared": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockDividendsPerShareDeclared", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Common Stock, Dividends, Per Share, Declared", "terseLabel": "Dividends declared per common and redeemable preferred shares", "documentation": "Aggregate dividends declared during the period for each share of common stock outstanding." } } }, "auth_ref": [ "r182" ] }, "cwco_CommonStockIssuedDuringPeriodValueIssuedForServices": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CommonStockIssuedDuringPeriodValueIssuedForServices", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Value of common stock issued in lieu of cash for services contributed to the entity. Value of the stock issued includes, but is not limited to, services contributed by vendors and founders.", "label": "Common Stock Issued During Period Value Issued For Services", "verboseLabel": "Issuance of shares, respectively, shares of common stock for services rendered" } } }, "auth_ref": [] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockMember", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails", "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows", "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Common stock [Member]", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r939", "r940", "r941", "r943", "r944", "r945", "r946", "r1049", "r1050", "r1085", "r1107", "r1110" ] }, "cwco_CommonStockOptionsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CommonStockOptionsMember", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Common Stock Options [Member]" } } }, "auth_ref": [] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Par or Stated Value Per Share", "verboseLabel": "Common stock, par value (in dollars per share)", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r143" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Shares Authorized", "verboseLabel": "Common stock, authorized", "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r143", "r762" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Shares, Issued", "verboseLabel": "Common stock, issued", "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." } } }, "auth_ref": [ "r143" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Shares, Outstanding", "verboseLabel": "Common stock, outstanding", "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation." } } }, "auth_ref": [ "r21", "r143", "r762", "r782", "r1110", "r1111" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockValue", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Common Stock, Value, Issued", "verboseLabel": "Common stock value", "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." } } }, "auth_ref": [ "r143", "r683", "r937" ] }, "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Company Selected Measure" } } }, "auth_ref": [ "r1000" ] }, "ecd_CompActuallyPaidVsNetIncomeTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsNetIncomeTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Net Income [Text Block]", "terseLabel": "Compensation Actually Paid vs. Net Income" } } }, "auth_ref": [ "r999" ] }, "ecd_CompActuallyPaidVsOtherMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsOtherMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Other Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Other Measure" } } }, "auth_ref": [ "r1001" ] }, "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]", "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return" } } }, "auth_ref": [ "r998" ] }, "us-gaap_CompensationAndRetirementDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CompensationAndRetirementDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Retirement benefits" } } }, "auth_ref": [] }, "cwco_ComputerSuppliesSoftwareLicensesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ComputerSuppliesSoftwareLicensesMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "documentation": "Computer supplies, software licenses.", "label": "Computer Supplies, Software Licenses [Member]" } } }, "auth_ref": [] }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskBenchmarkDomain", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails", "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Benchmark [Domain]", "documentation": "The denominator in a calculation of a disclosed concentration risk percentage." } } }, "auth_ref": [ "r54", "r55", "r108", "r109", "r349", "r892" ] }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByBenchmarkAxis", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails", "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Benchmark [Axis]", "documentation": "Information by benchmark of concentration risk." } } }, "auth_ref": [ "r54", "r55", "r108", "r109", "r349", "r719", "r892" ] }, "srt_ConsolidatedEntitiesAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidatedEntitiesAxis", "presentation": [ "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Consolidated Entities [Axis]" } } }, "auth_ref": [ "r273", "r588", "r589", "r592", "r593", "r649", "r903", "r1070", "r1073", "r1074" ] }, "srt_ConsolidatedEntitiesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidatedEntitiesDomain", "presentation": [ "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Consolidated Entities [Domain]" } } }, "auth_ref": [ "r273", "r588", "r589", "r592", "r593", "r649", "r903", "r1070", "r1073", "r1074" ] }, "cwco_ConsolidatedWaterBahamasMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ConsolidatedWaterBahamasMember", "presentation": [ "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Consolidated Water Bahamas [Member]" } } }, "auth_ref": [] }, "us-gaap_ConsolidationPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConsolidationPolicyTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Consolidation, Policy [Policy Text Block]", "verboseLabel": "Basis of consolidation", "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." } } }, "auth_ref": [ "r102", "r912" ] }, "cwco_ConstructionInProgress": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ConstructionInProgress", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "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" } } }, "auth_ref": [] }, "us-gaap_ConstructionInProgressGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConstructionInProgressGross", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Construction in Progress, Gross", "verboseLabel": "Construction in progress", "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." } } }, "auth_ref": [ "r177" ] }, "cwco_ConstructionInProgressPlacedInService": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ConstructionInProgressPlacedInService", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the amount of construction in progress placed in service.", "label": "Construction In Progress Placed In Service" } } }, "auth_ref": [] }, "cwco_ConstructionSevicesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ConstructionSevicesMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "documentation": "NA", "label": "Construction Sevices [Member]" } } }, "auth_ref": [] }, "cwco_ConsumablesStockMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ConsumablesStockMember", "presentation": [ "http://www.cwco.com/role/DisclosureInventoryDetails" ], "lang": { "en-us": { "role": { "label": "Consumables stock [Member]" } } }, "auth_ref": [] }, "cwco_ContractWithCustomerAmountBilled": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ContractWithCustomerAmountBilled", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureContractsInProgressDetails": { "parentTag": "cwco_ContractWithCustomerNetOverbillings", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerAssetNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerAssetNetCurrent", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails", "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Asset, Net, Current", "terseLabel": "Contract assets", "verboseLabel": "Contract assets", "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." } } }, "auth_ref": [ "r417", "r419", "r438" ] }, "cwco_ContractWithCustomerAxis": { "xbrltype": "stringItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ContractWithCustomerAxis", "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "lang": { "en-us": { "role": { "documentation": "Information by contract with customer.", "label": "Contract With Customer [Axis]" } } }, "auth_ref": [] }, "cwco_ContractWithCustomerDomain": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ContractWithCustomerDomain", "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "lang": { "en-us": { "role": { "documentation": "Information by contract with customer.", "label": "Contract With Customer [Domain]" } } }, "auth_ref": [] }, "cwco_ContractWithCustomerInProgressMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ContractWithCustomerInProgressMember", "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for contract with customer, in progress.", "label": "Contracts in progress" } } }, "auth_ref": [] }, "cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems", "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "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]" } } }, "auth_ref": [] }, "cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable": { "xbrltype": "stringItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable", "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "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]" } } }, "auth_ref": [] }, "cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressTables" ], "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" } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Liability, Current", "negatedLabel": "Contract liabilities", "verboseLabel": "Contract liabilities", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current." } } }, "auth_ref": [ "r417", "r418", "r438" ] }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityRevenueRecognized", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Liability, Revenue Recognized", "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due." } } }, "auth_ref": [ "r439" ] }, "cwco_ContractWithCustomerNetOverbillings": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ContractWithCustomerNetOverbillings", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureContractsInProgressDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "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 (liability)" } } }, "auth_ref": [] }, "cwco_ContractWithCustomerRetainage": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ContractWithCustomerRetainage", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureContractsInProgressDetails": { "parentTag": "cwco_ContractWithCustomerNetOverbillings", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of retainage with contract for customers.", "label": "Contract With Customer Retainage", "terseLabel": "Retainage" } } }, "auth_ref": [] }, "us-gaap_ConversionOfStockAmountConverted1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConversionOfStockAmountConverted1", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Conversion of Stock, Amount Converted", "verboseLabel": "Conversion (on a one-to-one basis) of 8,848 and 6,585, respectively, shares of redeemable preferred stock to common stock", "documentation": "The value of the stock converted in a noncash (or part noncash) transaction. Noncash is defined as transactions during a period 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." } } }, "auth_ref": [ "r50", "r51", "r52" ] }, "us-gaap_ConversionOfStockSharesConverted1": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConversionOfStockSharesConverted1", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlowsParenthetical" ], "lang": { "en-us": { "role": { "label": "Conversion (on a one-to-one basis) of 8,848 and 6,585, respectively, shares of redeemable preferred stock to common stock", "documentation": "The number of shares converted in a noncash (or part noncash) transaction. Noncash is defined as transactions during a period 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." } } }, "auth_ref": [ "r50", "r51", "r52" ] }, "cwco_CostOfPlantSalesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CostOfPlantSalesMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Cost of plant sales [Member]" } } }, "auth_ref": [] }, "us-gaap_CostOfRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfRevenue", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_GrossProfit", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails", "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Cost of Revenue", "terseLabel": "Cost of revenue (including related party expense of $0 and $2,694,810 in 2023 and 2022)", "verboseLabel": "Cost of revenue", "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period." } } }, "auth_ref": [ "r158", "r270", "r360", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r611", "r1071" ] }, "cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract", "lang": { "en-us": { "role": { "label": "Cost of revenues and general and administrative expenses" } } }, "auth_ref": [] }, "cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails", "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "label": "Cost of revenues and general and administrative expenses [Line Items]" } } }, "auth_ref": [] }, "cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable": { "xbrltype": "stringItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CostOfRevenuesAndGeneralAndAdministrativeExpensesTable", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails", "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "label": "Cost Of Revenues And General And Administrative Expenses [Table]" } } }, "auth_ref": [] }, "cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesTables" ], "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" } } }, "auth_ref": [] }, "cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpenses" ], "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" } } }, "auth_ref": [] }, "us-gaap_CostOfSalesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfSalesMember", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical" ], "lang": { "en-us": { "role": { "label": "Cost of revenue.", "documentation": "Primary financial statement caption encompassing cost of sales." } } }, "auth_ref": [] }, "cwco_CriteriaForRecognizingInvestmentAtCost": { "xbrltype": "stringItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "CriteriaForRecognizingInvestmentAtCost", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails" ], "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" } } }, "auth_ref": [] }, "srt_CurrencyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "CurrencyAxis", "presentation": [ "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Currency [Axis]" } } }, "auth_ref": [ "r1087" ] }, "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentFederalStateAndLocalTaxExpenseBenefitAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Current Federal, State and Local, Tax Expense (Benefit) [Abstract]", "terseLabel": "Current:" } } }, "auth_ref": [] }, "us-gaap_CurrentFederalTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentFederalTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Current Federal Tax Expense (Benefit)", "terseLabel": "Federal", "documentation": "Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r1036", "r1048", "r1083" ] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "us-gaap_CurrentIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Current Income Tax Expense (Benefit)", "totalLabel": "Total", "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations." } } }, "auth_ref": [ "r188", "r570", "r579", "r1048" ] }, "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentStateAndLocalTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Current State and Local Tax Expense (Benefit)", "terseLabel": "State", "documentation": "Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r1036", "r1048", "r1083" ] }, "us-gaap_CustomerRelationshipsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerRelationshipsMember", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails", "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Customer relationships", "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships." } } }, "auth_ref": [ "r98" ] }, "us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Debt Issuance Costs Incurred During Noncash or Partial Noncash Transaction", "terseLabel": "Purchase of equipment through issuance of long-term debt", "documentation": "The amount of debt issuance costs that were incurred during a noncash or partial noncash transaction." } } }, "auth_ref": [ "r50", "r51", "r52" ] }, "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFederalIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_DeferredIncomeTaxesAndTaxCredits", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Federal Income Tax Expense (Benefit)", "terseLabel": "Federal", "documentation": "Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r1048", "r1082", "r1083" ] }, "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFederalStateAndLocalTaxExpenseBenefitAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Federal, State and Local, Tax Expense (Benefit) [Abstract]", "terseLabel": "Deferred:" } } }, "auth_ref": [] }, "us-gaap_DeferredIncomeCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeCurrent", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Deferred Income, Current", "terseLabel": "Deferred revenue", "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." } } }, "auth_ref": [ "r1034" ] }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Deferred Income Tax Expense (Benefit)", "terseLabel": "Deferred income tax benefit", "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r12", "r188", "r218", "r578", "r579", "r1048" ] }, "us-gaap_DeferredIncomeTaxLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxLiabilities", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Deferred tax liabilities", "totalLabel": "Deferred Tax Liabilities, Gross", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences." } } }, "auth_ref": [ "r140", "r141", "r193", "r565" ] }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxLiabilitiesNet", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Deferred Income Tax Liabilities, Net", "terseLabel": "Deferred tax liabilities", "totalLabel": "Net deferred tax liability", "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting." } } }, "auth_ref": [ "r558", "r559", "r679" ] }, "us-gaap_DeferredIncomeTaxesAndTaxCredits": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxesAndTaxCredits", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Income Taxes and Tax Credits", "totalLabel": "Total", "documentation": "Amount of deferred income tax expense (benefit) and income tax credits." } } }, "auth_ref": [ "r168" ] }, "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_DeferredIncomeTaxesAndTaxCredits", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred State and Local Income Tax Expense (Benefit)", "terseLabel": "State", "documentation": "Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r1048", "r1082", "r1083" ] }, "us-gaap_DeferredTaxAssetsCapitalLossCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsCapitalLossCarryforwards", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Capital Loss Carryforwards", "terseLabel": "Loss carry forward", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible capital loss carryforwards." } } }, "auth_ref": [ "r91", "r1081" ] }, "us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsInProcessResearchAndDevelopment", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, in Process Research and Development", "terseLabel": "Capitalized research expenditures", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from in-process research and development costs expensed in connection with a business combination." } } }, "auth_ref": [ "r91", "r1081" ] }, "cwco_DeferredTaxAssetsLandBasisDifference": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DeferredTaxAssetsLandBasisDifference", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsNet", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Net of Valuation Allowance", "totalLabel": "Deferred tax assets", "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards." } } }, "auth_ref": [ "r1080" ] }, "us-gaap_DeferredTaxAssetsNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsNetAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Net [Abstract]", "verboseLabel": "Deferred tax assets:" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsOperatingLossCarryforwardsForeign", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Operating Loss Carryforwards, Foreign", "verboseLabel": "Operating loss carryforwards - Mexico", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible foreign operating loss carryforwards." } } }, "auth_ref": [ "r91", "r1081" ] }, "us-gaap_DeferredTaxAssetsOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsOther", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Other", "terseLabel": "Other", "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other." } } }, "auth_ref": [ "r91", "r1081" ] }, "cwco_DeferredTaxAssetsStartupCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DeferredTaxAssetsStartupCosts", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxCreditCarryforwardsResearch", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Tax Credit Carryforwards, Research", "verboseLabel": "Research & development tax credits", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible research tax credit carryforwards." } } }, "auth_ref": [ "r90", "r91", "r1081" ] }, "cwco_DeferredTaxAssetsTaxDeferredExpenseOperatingLeaseLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DeferredTaxAssetsTaxDeferredExpenseOperatingLeaseLiabilities", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from operating lease liabilities.", "label": "Deferred Tax Assets, Tax Deferred Expense, Operating Lease Liabilities", "terseLabel": "Operating lease liabilities" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Accrued Liabilities", "terseLabel": "Accrued compensation", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities." } } }, "auth_ref": [ "r91", "r1081" ] }, "us-gaap_DeferredTaxAssetsValuationAllowance": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsValuationAllowance", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Valuation Allowance", "negatedLabel": "Valuation allowances", "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized." } } }, "auth_ref": [ "r566" ] }, "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Liabilities, Intangible Assets", "terseLabel": "Intangible assets", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from intangible assets other than goodwill." } } }, "auth_ref": [ "r91", "r1081" ] }, "us-gaap_DeferredTaxLiabilitiesNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilitiesNetAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Liabilities, Net [Abstract]", "verboseLabel": "Deferred tax liabilities:" } } }, "auth_ref": [] }, "cwco_DeferredTaxLiabilitiesOperatingLeaseRightOfUseAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DeferredTaxLiabilitiesOperatingLeaseRightOfUseAssets", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount before allocation of valuation allowances of deferred tax liabilities attributable to deductible temporary differences from operating lease right-of-use assets.", "label": "Deferred Tax Liabilities, Operating Lease Right-Of-Use Assets", "terseLabel": "Operating lease right-of-use assets" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipment", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Liabilities, Property, Plant and Equipment", "terseLabel": "Property and equipment", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment." } } }, "auth_ref": [ "r91", "r1081" ] }, "us-gaap_DefinedBenefitPlanDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedBenefitPlanDisclosureLineItems", "presentation": [ "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails" ], "lang": { "en-us": { "role": { "label": "Defined Benefit Plan Disclosure [Line Items]", "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." } } }, "auth_ref": [] }, "us-gaap_DefinedContributionPlanCostRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedContributionPlanCostRecognized", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails" ], "lang": { "en-us": { "role": { "label": "Defined Contribution Plan, Cost", "documentation": "Amount of cost for defined contribution plan." } } }, "auth_ref": [ "r509" ] }, "cwco_DepositsHeldInForeignBank": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DepositsHeldInForeignBank", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_Depreciation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Depreciation", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Depreciation", "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." } } }, "auth_ref": [ "r12", "r73" ] }, "us-gaap_DepreciationAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DepreciationAndAmortization", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Depreciation, Depletion and Amortization, Nonproduction", "terseLabel": "Depreciation and amortization", "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." } } }, "auth_ref": [ "r12", "r73" ] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DepreciationDepletionAndAmortization", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Depreciation, Depletion and Amortization", "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." } } }, "auth_ref": [ "r12", "r325" ] }, "cwco_DepreciationMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DepreciationMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "label": "Depreciation [Member]" } } }, "auth_ref": [] }, "cwco_DesignAndConsultingServicesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DesignAndConsultingServicesMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "documentation": "NA", "label": "Design and Consulting Services [Member]" } } }, "auth_ref": [] }, "cwco_DirectorsFeesAndExpensesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DirectorsFeesAndExpensesMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "label": "Directors' fees and expenses [Member]" } } }, "auth_ref": [] }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesTables" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenue [Table Text Block]", "verboseLabel": "Schedule of Disaggregation of revenue", "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." } } }, "auth_ref": [ "r1076" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensation" ], "lang": { "en-us": { "role": { "label": "Share-based Payment Arrangement [Text Block]", "terseLabel": "Stock-based compensation", "documentation": "The entire disclosure for share-based payment arrangement." } } }, "auth_ref": [ "r515", "r519", "r547", "r548", "r550", "r933" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "lang": { "en-us": { "role": { "label": "Stock-based compensation" } } }, "auth_ref": [] }, "us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationTables" ], "lang": { "en-us": { "role": { "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", "documentation": "Tabular disclosure of share-based payment arrangement." } } }, "auth_ref": [ "r14", "r83" ] }, "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentFinancialInformationDetails" ], "lang": { "en-us": { "role": { "label": "Discontinued Operation, Income (Loss) from Discontinued Operation, before Income Tax", "verboseLabel": "Loss from operations", "documentation": "Amount before tax of income (loss) from a discontinued operation. 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." } } }, "auth_ref": [ "r121", "r122", "r123", "r124", "r125", "r131", "r152", "r1103" ] }, "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_EarningsPerShareBasic", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Discontinued Operation, Income (Loss) from Discontinued Operation, Net of Tax, Per Basic Share", "verboseLabel": "Discontinued operations", "documentation": "Per basic share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation." } } }, "auth_ref": [] }, "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_EarningsPerShareDiluted", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Discontinued Operation, Income (Loss) from Discontinued Operation, Net of Tax, Per Diluted Share", "verboseLabel": "Discontinued operations", "documentation": "Per diluted share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation." } } }, "auth_ref": [] }, "us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DiscontinuedOperationsAndDisposalGroupsAbstract", "lang": { "en-us": { "role": { "label": "Discontinued operations" } } }, "auth_ref": [] }, "cwco_DiscontinuedOperationsNonRecoverableExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DiscontinuedOperationsNonRecoverableExpenses", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "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" } } }, "auth_ref": [] }, "cwco_DiscountedCashFlowMethodMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DiscountedCashFlowMethodMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Discounted Cash Flow Method [Member]" } } }, "auth_ref": [] }, "us-gaap_DisposalGroupClassificationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupClassificationAxis", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails", "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentFinancialInformationDetails", "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Disposal Group Classification [Axis]", "documentation": "Information by disposal group classification." } } }, "auth_ref": [ "r230" ] }, "us-gaap_DisposalGroupClassificationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupClassificationDomain", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails", "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentFinancialInformationDetails", "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "label": "Disposal Group Classification [Domain]", "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." } } }, "auth_ref": [] }, "us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails": { "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" ], "lang": { "en-us": { "role": { "label": "Disposal Group, Including Discontinued Operation, Accounts, Notes and Loans Receivable, Net", "terseLabel": "Accounts receivable", "documentation": "Amount classified as accounts, notes and loans receivable attributable to disposal group held for sale or disposed of." } } }, "auth_ref": [ "r5", "r117", "r133", "r178" ] }, "us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Disposal Group, Including Discontinued Operation, Assets, Noncurrent", "verboseLabel": "Long-term assets of discontinued operations", "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." } } }, "auth_ref": [ "r5", "r6", "r117", "r133", "r178", "r230", "r231" ] }, "us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails": { "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" ], "lang": { "en-us": { "role": { "label": "Disposal Group, Including Discontinued Operation, Cash and Cash Equivalents", "terseLabel": "Cash", "documentation": "Amount classified as cash and cash equivalents attributable to disposal group held for sale or disposed of." } } }, "auth_ref": [ "r5", "r117", "r133", "r178" ] }, "us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Disposal Group, Including Discontinued Operation, Foreign Currency Translation Gains (Losses)", "negatedLabel": "Foreign currency transaction adjustment - discontinued operations", "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." } } }, "auth_ref": [ "r110" ] }, "cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails": { "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" ], "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" } } }, "auth_ref": [] }, "cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DisposalGroupIncludingDiscontinuedOperationLeaseCurrent", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "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" } } }, "auth_ref": [] }, "cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "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" } } }, "auth_ref": [] }, "cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "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" } } }, "auth_ref": [] }, "us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails": { "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" ], "lang": { "en-us": { "role": { "label": "Disposal Group, Including Discontinued Operation, Other Assets, Noncurrent", "verboseLabel": "Other assets", "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." } } }, "auth_ref": [ "r5", "r6", "r117", "r133", "r178" ] }, "us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails": { "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" ], "lang": { "en-us": { "role": { "label": "Disposal Group, Including Discontinued Operation, Prepaid and Other Assets, Current", "terseLabel": "Prepaid expenses and other current assets", "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." } } }, "auth_ref": [ "r5", "r117", "r133", "r176", "r178" ] }, "us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupNotDiscontinuedOperationGainLossOnDisposal", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Disposal Group, Not Discontinued Operation, Gain (Loss) on Disposal", "negatedLabel": "Loss from discontinued operations", "documentation": "Amount before tax of gain (loss) recognized on the sale or disposal of a disposal group. Excludes discontinued operations." } } }, "auth_ref": [ "r389", "r1045", "r1064" ] }, "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperations" ], "lang": { "en-us": { "role": { "label": "Disposal Groups, Including Discontinued Operations, Disclosure [Text Block]", "terseLabel": "Discontinued operations - Mexico project development", "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." } } }, "auth_ref": [ "r116", "r175" ] }, "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisposalGroupsIncludingDiscontinuedOperationsNameDomain", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails", "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentFinancialInformationDetails", "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Disposal Group Name [Domain]", "documentation": "Name of disposal group." } } }, "auth_ref": [ "r926", "r929" ] }, "cwco_DistributionSystemsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DistributionSystemsMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails", "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Distribution Systems [Member]" } } }, "auth_ref": [] }, "us-gaap_DividendsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsAbstract", "lang": { "en-us": { "role": { "label": "Dividends." } } }, "auth_ref": [] }, "us-gaap_DividendsCash": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsCash", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Dividends, Cash", "negatedLabel": "Dividends declared", "documentation": "Amount of paid and unpaid cash dividends declared for classes of stock, for example, but not limited to, common and preferred." } } }, "auth_ref": [ "r9", "r182" ] }, "us-gaap_DividendsDeclaredTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsDeclaredTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureDividendsTables" ], "lang": { "en-us": { "role": { "label": "Dividends Declared [Table Text Block]", "terseLabel": "Schedule of dividends", "documentation": "Tabular disclosure of information related to dividends declared, including paid and unpaid dividends." } } }, "auth_ref": [] }, "us-gaap_DividendsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsPayableCurrent", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Dividends Payable, Current", "verboseLabel": "Dividends payable", "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)." } } }, "auth_ref": [ "r33" ] }, "us-gaap_DividendsPayableCurrentAndNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsPayableCurrentAndNoncurrent", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "label": "Dividends Payable", "verboseLabel": "Dividends declared but not paid", "documentation": "Carrying value as of the balance sheet date of dividends declared but unpaid on equity securities issued by the entity and outstanding." } } }, "auth_ref": [ "r138", "r139", "r194", "r947", "r1100" ] }, "cwco_DividendsPerShareDeclared": { "xbrltype": "perShareItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DividendsPerShareDeclared", "presentation": [ "http://www.cwco.com/role/DisclosureDividendsDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_DividendsPreferredStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsPreferredStock", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureEarningsPerShareDetails" ], "lang": { "en-us": { "role": { "label": "Dividends, Preferred Stock", "negatedLabel": "Less: preferred stock dividends", "documentation": "Amount of paid and unpaid preferred stock dividends declared with the form of settlement in cash, stock and payment-in-kind (PIK)." } } }, "auth_ref": [ "r9", "r182" ] }, "cwco_DividendsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DividendsTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureDividends" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for dividends.", "label": "Dividends [Text Block]", "terseLabel": "Dividends" } } }, "auth_ref": [] }, "cwco_DocumentAndEntityInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "DocumentAndEntityInformationAbstract", "lang": { "en-us": { "role": { "documentation": "Document and Entity Information [Abstract]", "label": "Document and Entity Information" } } }, "auth_ref": [] }, "dei_DocumentAnnualReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentAnnualReport", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Annual Report", "documentation": "Boolean flag that is true only for a form used as an annual report." } } }, "auth_ref": [ "r954", "r955", "r968" ] }, "dei_DocumentFinStmtErrorCorrectionFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFinStmtErrorCorrectionFlag", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Financial Statement Error Correction [Flag]", "documentation": "Indicates whether any of the financial statement period in the filing include a restatement due to error correction." } } }, "auth_ref": [ "r954", "r955", "r968", "r1004" ] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Period Focus", "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." } } }, "auth_ref": [] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Year Focus", "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." } } }, "auth_ref": [] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentPeriodEndDate", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Period End Date", "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." } } }, "auth_ref": [] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentTransitionReport", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r989" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentType", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Type", "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'." } } }, "auth_ref": [] }, "us-gaap_DomesticCountryMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DomesticCountryMember", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Domestic Tax Authority [Member]", "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile." } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareAbstract", "lang": { "en-us": { "role": { "label": "Earnings per share" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasic", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Basic", "totalLabel": "Basic earnings per share", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r260", "r283", "r284", "r285", "r286", "r287", "r294", "r297", "r306", "r307", "r308", "r312", "r603", "r604", "r674", "r695", "r915" ] }, "us-gaap_EarningsPerShareBasicAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasicAbstract", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "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" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDiluted", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Diluted", "totalLabel": "Diluted earnings per share", "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." } } }, "auth_ref": [ "r260", "r283", "r284", "r285", "r286", "r287", "r297", "r306", "r307", "r308", "r312", "r603", "r604", "r674", "r695", "r915" ] }, "us-gaap_EarningsPerShareDilutedAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDilutedAbstract", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "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" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureEarningsPerShare" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Text Block]", "verboseLabel": "Earnings per share", "documentation": "The entire disclosure for earnings per share." } } }, "auth_ref": [ "r293", "r309", "r310", "r311" ] }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateContinuingOperations", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Percent", "totalLabel": "Total U.S. statutory federal tax rate to the effective rate", "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r561" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent", "verboseLabel": "U.S. statutory federal rate", "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss)." } } }, "auth_ref": [ "r272", "r561", "r581" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Percent", "verboseLabel": "Valuation allowance for deferred tax assets", "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." } } }, "auth_ref": [ "r1079", "r1084" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Percent", "negatedLabel": "Nontaxable foreign income", "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." } } }, "auth_ref": [ "r1079", "r1084" ] }, "cwco_EffectiveIncomeTaxRateReconciliationPermanentItems": { "xbrltype": "percentItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "EffectiveIncomeTaxRateReconciliationPermanentItems", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent", "verboseLabel": "State taxes, net of federal effect", "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)." } } }, "auth_ref": [ "r1079", "r1084" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationTaxCreditsResearch", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Research, Percent", "negatedLabel": "Research & Development Tax Credit", "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." } } }, "auth_ref": [ "r1079", "r1084" ] }, "us-gaap_ElectricityMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ElectricityMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Electricity [Member]", "documentation": "Generation, transmission and distribution of electric energy." } } }, "auth_ref": [ "r1077" ] }, "cwco_EmployeeCostsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "EmployeeCostsMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails", "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "label": "Employee costs [Member]" } } }, "auth_ref": [] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized", "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement." } } }, "auth_ref": [ "r549" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition", "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." } } }, "auth_ref": [ "r549" ] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeStockOptionMember", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails", "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Employee Stock Option [Member]", "terseLabel": "Employee Stock Option", "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." } } }, "auth_ref": [] }, "cwco_EmployeesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "EmployeesMember", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" ], "lang": { "en-us": { "role": { "label": "Employees [Member]" } } }, "auth_ref": [] }, "cwco_EmploymentAgreementBaseAnnualSalaries": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "EmploymentAgreementBaseAnnualSalaries", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the base annual salary amount, under the employment agreement.", "label": "Employment Agreement Base Annual Salaries" } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Address Line One", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine2": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine2", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Address Line Two", "documentation": "Address Line 2 such as Street or Suite number" } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine3": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine3", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Address Line Three", "documentation": "Address Line 3 such as an Office Park" } } }, "auth_ref": [] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, City or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "dei_EntityAddressCountry": { "xbrltype": "countryCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressCountry", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Country", "documentation": "ISO 3166-1 alpha-2 country code." } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Postal Zip Code", "documentation": "Code for the postal or zip code" } } }, "auth_ref": [] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCentralIndexKey", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Central Index Key", "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK." } } }, "auth_ref": [ "r952" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Common Stock, Shares Outstanding", "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." } } }, "auth_ref": [] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Current Reporting Status", "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." } } }, "auth_ref": [] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r952" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFileNumber", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity File Number", "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." } } }, "auth_ref": [] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFilerCategory", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Filer Category", "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." } } }, "auth_ref": [ "r952" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Incorporation, State or Country Code", "documentation": "Two-character EDGAR code representing the state or country of incorporation." } } }, "auth_ref": [] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Interactive Data Current", "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)." } } }, "auth_ref": [ "r1029" ] }, "dei_EntityPublicFloat": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityPublicFloat", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Public Float", "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." } } }, "auth_ref": [] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityRegistrantName", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Registrant Name", "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC." } } }, "auth_ref": [ "r952" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityShellCompany", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Shell Company", "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act." } } }, "auth_ref": [ "r952" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntitySmallBusiness", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r952" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Tax Identification Number", "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS." } } }, "auth_ref": [ "r952" ] }, "dei_EntityVoluntaryFilers": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityVoluntaryFilers", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Voluntary Filers", "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." } } }, "auth_ref": [] }, "dei_EntityWellKnownSeasonedIssuer": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityWellKnownSeasonedIssuer", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Well-known Seasoned Issuer", "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." } } }, "auth_ref": [ "r1030" ] }, "cwco_EntityWideRevenuesMajorCustomerPercentage": { "xbrltype": "percentItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "EntityWideRevenuesMajorCustomerPercentage", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityComponentDomain", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Equity Component [Domain]", "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." } } }, "auth_ref": [ "r21", "r226", "r255", "r256", "r257", "r274", "r275", "r276", "r280", "r288", "r290", "r313", "r361", "r364", "r416", "r551", "r552", "r553", "r571", "r572", "r594", "r595", "r596", "r597", "r598", "r600", "r602", "r620", "r621", "r622", "r623", "r624", "r625", "r641", "r711", "r712", "r713", "r736", "r809" ] }, "cwco_EquityIncentivePlan2008Member": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "EquityIncentivePlan2008Member", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Equity Incentive Plan2008 [Member]" } } }, "auth_ref": [] }, "srt_EquityMethodInvesteeNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "EquityMethodInvesteeNameDomain", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "Investment, Name [Domain]" } } }, "auth_ref": [ "r357", "r358", "r359" ] }, "us-gaap_EquityMethodInvestmentAdditionalInformation": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityMethodInvestmentAdditionalInformation", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Equity Method Investment, Additional Information", "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." } } }, "auth_ref": [] }, "us-gaap_EquityMethodInvestmentDividendsOrDistributions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityMethodInvestmentDividendsOrDistributions", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 12.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Equity Method Investment, Distribution", "verboseLabel": "Distribution of earnings from OC-BVI", "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." } } }, "auth_ref": [ "r10", "r12", "r151", "r690" ] }, "us-gaap_EquityMethodInvestmentOwnershipPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityMethodInvestmentOwnershipPercentage", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "Equity Method Investment, Ownership Percentage", "documentation": "The percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting." } } }, "auth_ref": [ "r357" ] }, "us-gaap_EquityMethodInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityMethodInvestments", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Equity Method Investments", "terseLabel": "Investment in OC-BVI", "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." } } }, "auth_ref": [ "r330", "r356", "r1039", "r1058" ] }, "ecd_EquityValuationAssumptionDifferenceFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "EquityValuationAssumptionDifferenceFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Valuation Assumption Difference, Footnote [Text Block]", "terseLabel": "Equity Valuation Assumption Difference, Footnote" } } }, "auth_ref": [ "r997" ] }, "ecd_ErrCompAnalysisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ErrCompAnalysisTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Erroneous Compensation Analysis [Text Block]", "terseLabel": "Erroneous Compensation Analysis" } } }, "auth_ref": [ "r960", "r972", "r982", "r1008" ] }, "ecd_ErrCompRecoveryTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ErrCompRecoveryTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Erroneously Awarded Compensation Recovery [Table]", "terseLabel": "Erroneously Awarded Compensation Recovery" } } }, "auth_ref": [ "r957", "r969", "r979", "r1005" ] }, "cwco_EstimatedFairValueCarryingAmountExceededPercentage": { "xbrltype": "pureItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "EstimatedFairValueCarryingAmountExceededPercentage", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" ], "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" } } }, "auth_ref": [] }, "cwco_EstimatedFairValueCarryingAmountExceededValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "EstimatedFairValueCarryingAmountExceededValue", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the exceeded value of estimated fair value of reporting segments.", "label": "Estimated Fair Value carrying Amount Exceeded Value" } } }, "auth_ref": [] }, "cwco_EstimatedFairValuePercentageSegmentReportingInformation": { "xbrltype": "percentItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "EstimatedFairValuePercentageSegmentReportingInformation", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" ], "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" } } }, "auth_ref": [] }, "ecd_ExecutiveCategoryAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ExecutiveCategoryAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Executive Category [Axis]", "terseLabel": "Executive Category:" } } }, "auth_ref": [ "r1003" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems", "presentation": [ "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]", "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." } } }, "auth_ref": [ "r608", "r609", "r610" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable", "presentation": [ "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value Measurements, Recurring and Nonrecurring [Table]", "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis." } } }, "auth_ref": [ "r608", "r609", "r610" ] }, "cwco_FairValueDeterminingMethodAxis": { "xbrltype": "stringItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "FairValueDeterminingMethodAxis", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value Determining Method [Axis]" } } }, "auth_ref": [] }, "cwco_FairValueDeterminingMethodDomain": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "FairValueDeterminingMethodDomain", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value Determining Method [Domain]" } } }, "auth_ref": [] }, "us-gaap_FinancialInstrumentsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinancialInstrumentsDisclosureTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureFinancialInstruments" ], "lang": { "en-us": { "role": { "label": "Financial Instruments Disclosure [Text Block]", "terseLabel": "Financial instruments", "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." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails": { "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "negatedLabel": "Finite-Lived Intangible Assets, Accumulated Amortization", "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r239", "r386" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, after Year Five", "terseLabel": "Thereafter", "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)." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months", "verboseLabel": "2024", "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)." } } }, "auth_ref": [ "r173" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Five", "verboseLabel": "2028", "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)." } } }, "auth_ref": [ "r173" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Four", "terseLabel": "2027", "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)." } } }, "auth_ref": [ "r173" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Three", "terseLabel": "2026", "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)." } } }, "auth_ref": [ "r173" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Two", "verboseLabel": "2025", "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)." } } }, "auth_ref": [ "r173" ] }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails", "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "documentation": "Information by major type or class of finite-lived intangible assets." } } }, "auth_ref": [ "r383", "r385", "r386", "r388", "r656", "r660" ] }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsGross", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails": { "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Gross", "verboseLabel": "Finite-Lived Intangible Assets, Gross", "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r172", "r660" ] }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsLineItems", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets [Line Items]", "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." } } }, "auth_ref": [ "r656" ] }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails", "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "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." } } }, "auth_ref": [ "r68", "r71" ] }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsNet", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Net", "totalLabel": "Finite Lived Intangible Assets Net", "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r172", "r656" ] }, "cwco_FirstPhaseMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "FirstPhaseMember", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "First Phase [Member]" } } }, "auth_ref": [] }, "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ForeignCurrencyTransactionGainLossBeforeTax", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Foreign Currency Transaction Gain (Loss), before Tax", "terseLabel": "Net foreign currency gains", "documentation": "Amount, before tax, of realized and unrealized gain (loss) from foreign currency transaction." } } }, "auth_ref": [ "r616", "r617", "r618", "r619", "r806" ] }, "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Foreign Currency Transactions and Translations Policy [Policy Text Block]", "verboseLabel": "Foreign currency", "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." } } }, "auth_ref": [ "r615" ] }, "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount", "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount" } } }, "auth_ref": [ "r964", "r976", "r986", "r1012" ] }, "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Expense of Enforcement, Amount", "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount" } } }, "auth_ref": [ "r964", "r976", "r986", "r1012" ] }, "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Violation of Home Country Law, Amount", "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount" } } }, "auth_ref": [ "r964", "r976", "r986", "r1012" ] }, "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Explanation of Impracticability [Text Block]", "terseLabel": "Forgone Recovery, Explanation of Impracticability" } } }, "auth_ref": [ "r964", "r976", "r986", "r1012" ] }, "ecd_ForgoneRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r964", "r976", "r986", "r1012" ] }, "cwco_FuelOilMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "FuelOilMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Fuel oil [Member]" } } }, "auth_ref": [] }, "us-gaap_FurnitureAndFixturesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FurnitureAndFixturesMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails", "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Office furniture, fixtures and equipment [Member]", "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." } } }, "auth_ref": [] }, "us-gaap_GainLossOnSaleOfDerivatives": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GainLossOnSaleOfDerivatives", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0, "order": 5.0 }, "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 8.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Unrealized Gain (Loss) on Derivatives", "terseLabel": "Loss (gain) on net put/call option", "verboseLabel": "Loss on put/call options", "documentation": "The difference between the book value and the sale price of options, swaps, futures, forward contracts, and other derivative instruments. This element refers to the gain (loss) included in earnings." } } }, "auth_ref": [ "r12", "r202", "r796", "r797", "r798", "r799" ] }, "us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GainLossOnSalesOfAssetsAndAssetImpairmentCharges", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Gain (Loss) on Sale of Assets and Asset Impairment Charges", "terseLabel": "Loss on asset dispositions and impairments, net", "verboseLabel": "Gain (loss) on asset dispositions and impairments, net", "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." } } }, "auth_ref": [ "r1045" ] }, "cwco_GainOnAssetDispositionsAndImpairmentsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "GainOnAssetDispositionsAndImpairmentsNet", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "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 on Asset Dispositions and Impairments, Net" } } }, "auth_ref": [] }, "us-gaap_GeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails", "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "General and Administrative Expense", "terseLabel": "General and administrative expenses", "verboseLabel": "General and administrative expenses (including related party expense of $0 and $96,924 in 2023 and 2022)", "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." } } }, "auth_ref": [ "r160", "r787" ] }, "us-gaap_GeneralAndAdministrativeExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GeneralAndAdministrativeExpenseMember", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical" ], "lang": { "en-us": { "role": { "label": "General and administrative expense.", "documentation": "Primary financial statement caption encompassing general and administrative expense." } } }, "auth_ref": [ "r154" ] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Goodwill", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails", "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Goodwill", "verboseLabel": "Goodwill", "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." } } }, "auth_ref": [ "r238", "r372", "r673", "r919", "r937", "r1061", "r1062" ] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Intangible assets" } } }, "auth_ref": [] }, "us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsPolicyTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Goodwill and Intangible Assets, Policy [Policy Text Block]", "terseLabel": "Goodwill and intangible assets", "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." } } }, "auth_ref": [ "r17", "r65" ] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GrossProfit", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Gross Profit", "totalLabel": "Gross profit", "verboseLabel": "Gross profit", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r156", "r270", "r320", "r334", "r340", "r343", "r360", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r611", "r917", "r1071" ] }, "cwco_GuidelinePublicCompanyMethodMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "GuidelinePublicCompanyMethodMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Guideline Public Company Method [Member]" } } }, "auth_ref": [] }, "dei_IcfrAuditorAttestationFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "IcfrAuditorAttestationFlag", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "ICFR Auditor Attestation Flag" } } }, "auth_ref": [ "r954", "r955", "r968" ] }, "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]", "terseLabel": "Long-lived assets", "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." } } }, "auth_ref": [ "r0", "r180" ] }, "cwco_IncomeFromContinuingOperationsAttributableToNonControllingInterests": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "IncomeFromContinuingOperationsAttributableToNonControllingInterests", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureConsolidatedStatementsOfCashFlowsCalc2": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "Amount after tax of income (loss) from continuing\n operations including portion attributable to the\n noncontrolling interest.", "label": "Income from Continuing Operations Attributable to Non-Controlling Interests" } } }, "auth_ref": [] }, "us-gaap_IncomeLossFromContinuingOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperations", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureEarningsPerShareDetails", "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "definitionGuidance": "Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders", "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", "documentation": "Amount after tax of income (loss) from continuing operations attributable to the parent." } } }, "auth_ref": [ "r101", "r157", "r168", "r283", "r284", "r285", "r286", "r304", "r308" ] }, "us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_IncomeLossFromContinuingOperations", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Continuing Operations, Net of Tax, Attributable to Noncontrolling Interest", "verboseLabel": "Income from continuing operations attributable to non-controlling interests", "documentation": "Amount after tax of income (loss) from continuing operations attributable to the noncontrolling interest." } } }, "auth_ref": [ "r99", "r189" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Continuing Operations before Income Taxes, Domestic", "verboseLabel": "United States", "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations." } } }, "auth_ref": [ "r271", "r580" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails", "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "netLabel": "Income before income taxes", "totalLabel": "Income before income taxes", "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." } } }, "auth_ref": [ "r1", "r150", "r199", "r320", "r334", "r340", "r343", "r675", "r691", "r917" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Continuing Operations before Income Taxes, Foreign", "verboseLabel": "Mexico", "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." } } }, "auth_ref": [ "r271", "r580" ] }, "cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails" ], "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)" } } }, "auth_ref": [] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest", "totalLabel": "Income before income taxes", "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." } } }, "auth_ref": [ "r320", "r334", "r340", "r343", "r697", "r917" ] }, "us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_IncomeLossFromContinuingOperations", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Continuing Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest", "totalLabel": "Net income from continuing operations", "documentation": "Amount after tax of income (loss) from continuing operations including portion attributable to the noncontrolling interest." } } }, "auth_ref": [ "r189", "r270", "r279", "r320", "r334", "r340", "r343", "r360", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r604", "r611", "r691", "r917", "r1071" ] }, "us-gaap_IncomeLossFromContinuingOperationsPerBasicShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsPerBasicShare", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_EarningsPerShareBasic", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails", "http://www.cwco.com/role/DisclosureContractsInProgressDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Continuing Operations, Per Basic Share", "terseLabel": "Increase in basic earnings", "verboseLabel": "Continuing operations", "documentation": "The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r149", "r197", "r200", "r260", "r279", "r283", "r284", "r285", "r286", "r297", "r306", "r307", "r604", "r674", "r1104" ] }, "us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsPerDilutedShare", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_EarningsPerShareDiluted", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails", "http://www.cwco.com/role/DisclosureContractsInProgressDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Continuing Operations, Per Diluted Share", "terseLabel": "Increase in diluted earnings", "verboseLabel": "Continuing operations", "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." } } }, "auth_ref": [ "r149", "r260", "r279", "r283", "r284", "r285", "r286", "r297", "r306", "r307", "r308", "r604", "r674", "r1104" ] }, "cwco_IncomeLossFromDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "IncomeLossFromDiscontinuedOperations", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentFinancialInformationDetails", "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of income (loss) from a discontinued operation.", "label": "Income Loss from Discontinued Operations", "netLabel": "Loss from discontinued operations", "verboseLabel": "Less discontinued operations" } } }, "auth_ref": [] }, "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromDiscontinuedOperationsNetOfTax", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 2.0 }, "http://www.cwco.com/role/DisclosureEarningsPerShareDetails": { "parentTag": "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureEarningsPerShareDetails", "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Discontinued Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest", "terseLabel": "Total loss from discontinued operations", "totalLabel": "Total loss from discontinued operations", "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." } } }, "auth_ref": [ "r121", "r122", "r123", "r124", "r125", "r135", "r231", "r583", "r692" ] }, "us-gaap_IncomeLossFromEquityMethodInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromEquityMethodInvestments", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Equity Method Investments", "verboseLabel": "Equity in the earnings of OC-BVI", "documentation": "Amount of income (loss) for proportionate share of equity method investee's income (loss)." } } }, "auth_ref": [ "r12", "r151", "r198", "r327", "r356", "r690" ] }, "cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "IncomeLossFromEquityMethodInvestmentsAndSubsidiaries", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 11.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "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" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF INCOME" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails", "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentFinancialInformationDetails", "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Disposal Group Name [Axis]", "documentation": "Information by name of disposal group." } } }, "auth_ref": [ "r926", "r929" ] }, "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails", "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentFinancialInformationDetails" ], "lang": { "en-us": { "role": { "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]", "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." } } }, "auth_ref": [] }, "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails", "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentFinancialInformationDetails" ], "lang": { "en-us": { "role": { "label": "Disposal Groups, Including Discontinued Operations [Table]", "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." } } }, "auth_ref": [ "r15", "r25", "r30", "r117", "r126", "r127", "r128", "r129", "r130", "r134", "r136", "r137", "r179" ] }, "us-gaap_IncomeStatementLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationAxis", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical" ], "lang": { "en-us": { "role": { "label": "Income Statement Location [Axis]", "documentation": "Information by location in the income statement." } } }, "auth_ref": [ "r390", "r392", "r792" ] }, "us-gaap_IncomeStatementLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationDomain", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical" ], "lang": { "en-us": { "role": { "label": "Income Statement Location [Domain]", "documentation": "Location in the income statement." } } }, "auth_ref": [ "r392", "r792" ] }, "us-gaap_IncomeTaxAuthorityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityAxis", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Income Tax Authority [Axis]", "documentation": "Information by tax jurisdiction." } } }, "auth_ref": [ "r20" ] }, "us-gaap_IncomeTaxAuthorityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityDomain", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Income Tax Authority [Domain]", "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." } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Income taxes" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxes" ], "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Text Block]", "verboseLabel": "Income taxes", "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." } } }, "auth_ref": [ "r272", "r555", "r562", "r563", "r568", "r576", "r582", "r584", "r585", "r730" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest", "weight": -1.0, "order": 2.0 }, "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails", "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Income Tax Expense (Benefit)", "terseLabel": "Benefit for income taxes", "totalLabel": "Total provision (benefit)", "verboseLabel": "Provision for income taxes", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r207", "r221", "r289", "r290", "r328", "r560", "r577", "r698" ] }, "us-gaap_IncomeTaxPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxPolicyTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Income Tax, Policy [Policy Text Block]", "terseLabel": "Income taxes", "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." } } }, "auth_ref": [ "r254", "r556", "r557", "r563", "r564", "r567", "r569", "r724" ] }, "us-gaap_IncomeTaxesPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxesPaidNet", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "label": "Income Taxes Paid, Net", "terseLabel": "Income taxes paid in cash", "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes." } } }, "auth_ref": [ "r49" ] }, "cwco_IncreaseDecreaseInAccountsPayableAndAccruedExpensesAndOtherCurrentLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "IncreaseDecreaseInAccountsPayableAndAccruedExpensesAndOtherCurrentLiabilities", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 17.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "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 the aggregate amount of expenses incurred but not yet paid. And in current liabilities classified as other", "label": "Increase Decrease In Accounts Payable and Accrued Expenses and Other Current Liabilities", "terseLabel": "Accounts payable (including related parties), accrued expenses and other current liabilities" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInAccountsReceivableAndOtherOperatingAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsReceivableAndOtherOperatingAssets", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 13.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Accounts Receivable and Other Operating Assets", "negatedLabel": "Accounts receivable", "documentation": "Amount of increase (decrease) in receivables, and operating assets classified as other." } } }, "auth_ref": [ "r1044" ] }, "cwco_IncreaseDecreaseInContractAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "IncreaseDecreaseInContractAssets", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 14.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in contract assets.", "label": "Increase (Decrease) in Contract Assets", "negatedLabel": "Contract assets" } } }, "auth_ref": [] }, "cwco_IncreaseDecreaseInContractLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "IncreaseDecreaseInContractLiability", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 18.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in obligation to transfer good or service for which consideration has been received or is receivable.", "label": "Increase Decrease in Contract Liability", "negatedLabel": "Contract liabilities" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInDeferredRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInDeferredRevenue", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 20.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Deferred Revenue", "terseLabel": "Deferred revenue", "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." } } }, "auth_ref": [ "r906" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 15.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Inventories", "negatedLabel": "Inventory", "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." } } }, "auth_ref": [ "r11" ] }, "us-gaap_IncreaseDecreaseInOperatingLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingLiabilities", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 19.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Operating Liabilities", "terseLabel": "Operating lease liabilities", "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities that result from activities that generate operating income." } } }, "auth_ref": [ "r11" ] }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": -1.0, "order": 16.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "negatedLabel": "Prepaid expenses and other assets", "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other." } } }, "auth_ref": [ "r11" ] }, "us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncrementalCommonSharesAttributableToCallOptionsAndWarrants", "calculation": { "http://www.cwco.com/role/DisclosureEarningsPerShareDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureEarningsPerShareDetails" ], "lang": { "en-us": { "role": { "label": "Incremental Common Shares Attributable to Dilutive Effect of Call Options and Warrants", "terseLabel": "Potential dilutive effect of unexercised options and unvested stock grants", "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." } } }, "auth_ref": [ "r298", "r299", "r300", "r308" ] }, "us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncrementalCommonSharesAttributableToConversionOfPreferredStock", "calculation": { "http://www.cwco.com/role/DisclosureEarningsPerShareDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureEarningsPerShareDetails" ], "lang": { "en-us": { "role": { "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)", "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." } } }, "auth_ref": [ "r302", "r303", "r308" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IndefiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails", "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Indefinite-lived Intangible Assets [Axis]", "documentation": "Information by type or class of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit." } } }, "auth_ref": [ "r384", "r387" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IndefiniteLivedIntangibleAssetsByMajorClassLineItems", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" ], "lang": { "en-us": { "role": { "label": "Indefinite-lived Intangible Assets [Line Items]", "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." } } }, "auth_ref": [] }, "us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IndefiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails", "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Indefinite-lived Intangible Assets, Major Class Name [Domain]", "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." } } }, "auth_ref": [ "r69", "r174" ] }, "ecd_IndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "IndividualAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Individual [Axis]", "terseLabel": "Individual:" } } }, "auth_ref": [ "r967", "r976", "r986", "r1003", "r1012", "r1016", "r1024" ] }, "ecd_InsiderTradingArrLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingArrLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Arrangements [Line Items]", "terseLabel": "Insider Trading Arrangements:" } } }, "auth_ref": [ "r1022" ] }, "ecd_InsiderTradingPoliciesProcLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingPoliciesProcLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures [Line Items]", "terseLabel": "Insider Trading Policies and Procedures:" } } }, "auth_ref": [ "r956", "r1028" ] }, "ecd_InsiderTrdPoliciesProcAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTrdPoliciesProcAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Adopted [Flag]", "terseLabel": "Insider Trading Policies and Procedures Adopted" } } }, "auth_ref": [ "r956", "r1028" ] }, "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]", "terseLabel": "Insider Trading Policies and Procedures Not Adopted" } } }, "auth_ref": [ "r956", "r1028" ] }, "cwco_InsuranceMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "InsuranceMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails", "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "label": "Insurance [Member]" } } }, "auth_ref": [] }, "us-gaap_IntangibleAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntangibleAssetsDisclosureTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssets" ], "lang": { "en-us": { "role": { "label": "Intangible Assets Disclosure [Text Block]", "terseLabel": "Intangible assets", "documentation": "The entire disclosure for all or part of the information related to intangible assets." } } }, "auth_ref": [ "r382" ] }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntangibleAssetsNetExcludingGoodwill", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 7.0 }, "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails", "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails", "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Intangible Assets, Net (Excluding Goodwill)", "terseLabel": "Intangibles, net", "totalLabel": "Intangible assets, net", "verboseLabel": "Intangible assets, net", "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." } } }, "auth_ref": [ "r66", "r70" ] }, "us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntangibleAssetsNetExcludingGoodwillAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" ], "lang": { "en-us": { "role": { "label": "Intangible Assets, Net (Excluding Goodwill) [Abstract]", "verboseLabel": "Cost" } } }, "auth_ref": [] }, "us-gaap_InterestCostsCapitalized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestCostsCapitalized", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Interest Costs Capitalized", "terseLabel": "Interest Capitalized", "documentation": "Amount of interest capitalized during the period." } } }, "auth_ref": [ "r111" ] }, "us-gaap_InterestExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestExpense", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Interest Expense", "negatedLabel": "Interest expense", "documentation": "Amount of the cost of borrowed funds accounted for as interest expense." } } }, "auth_ref": [ "r112", "r203", "r258", "r324", "r626", "r793", "r948", "r1109" ] }, "us-gaap_InterestIncomeOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestIncomeOther", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Interest Income, Other", "verboseLabel": "Interest income", "documentation": "Amount of interest income earned from interest bearing assets classified as other." } } }, "auth_ref": [] }, "us-gaap_InterestPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestPaidNet", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities", "verboseLabel": "Interest paid in cash", "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." } } }, "auth_ref": [ "r263", "r266", "r267" ] }, "cwco_InventoryCurrentAndNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "InventoryCurrentAndNoncurrent", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of inventory current and non current.", "label": "Inventory Current And Noncurrent", "terseLabel": "Inventory, current and non-current" } } }, "auth_ref": [] }, "us-gaap_InventoryCurrentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryCurrentTable", "presentation": [ "http://www.cwco.com/role/DisclosureInventoryDetails" ], "lang": { "en-us": { "role": { "label": "Inventory, Current [Table]", "documentation": "Disclosure of information about inventory expected to be sold or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [] }, "us-gaap_InventoryDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Inventory" } } }, "auth_ref": [] }, "us-gaap_InventoryDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureInventory" ], "lang": { "en-us": { "role": { "label": "Inventory Disclosure [Text Block]", "terseLabel": "Inventory", "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." } } }, "auth_ref": [ "r369" ] }, "us-gaap_InventoryGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryGross", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureInventoryDetails" ], "lang": { "en-us": { "role": { "label": "Inventory, Gross", "terseLabel": "Total inventory", "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." } } }, "auth_ref": [ "r1041" ] }, "us-gaap_InventoryLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryLineItems", "presentation": [ "http://www.cwco.com/role/DisclosureInventoryDetails" ], "lang": { "en-us": { "role": { "label": "Inventory [Line Items]", "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." } } }, "auth_ref": [] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryNet", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureInventoryDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Inventory, Net", "terseLabel": "Less current portion", "verboseLabel": "Inventory", "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r250", "r910", "r937" ] }, "us-gaap_InventoryNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryNoncurrent", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureInventoryDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Inventory, Noncurrent", "terseLabel": "Inventory (non-current)", "verboseLabel": "Inventory, noncurrent", "documentation": "Inventories not expected to be converted to cash, sold or exchanged within the normal operating cycle." } } }, "auth_ref": [ "r1040" ] }, "us-gaap_InventoryPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryPolicyTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Inventory, Policy [Policy Text Block]", "terseLabel": "Inventory", "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." } } }, "auth_ref": [ "r209", "r234", "r249", "r369", "r370", "r371", "r654", "r913" ] }, "us-gaap_InvestmentPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentPolicyTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Investment, Policy [Policy Text Block]", "terseLabel": "Investments", "documentation": "Disclosure of accounting policy for investment in financial asset." } } }, "auth_ref": [ "r696", "r720", "r721", "r722", "r723", "r835", "r837" ] }, "us-gaap_InvestmentsAllOtherInvestmentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentsAllOtherInvestmentsAbstract", "lang": { "en-us": { "role": { "label": "Financial instruments" } } }, "auth_ref": [] }, "cwco_InvestorRelationsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "InvestorRelationsMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "documentation": "Investor relations .", "label": "Investor Relations [Member]" } } }, "auth_ref": [] }, "country_KY": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "KY", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails", "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" ], "lang": { "en-us": { "role": { "label": "Cayman Islands [Member]" } } }, "auth_ref": [] }, "currency_KYD": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/currency/2023", "localname": "KYD", "presentation": [ "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Cayman Islands dollar [Member]" } } }, "auth_ref": [] }, "cwco_KalaeloaDesalcoMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "KalaeloaDesalcoMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Information relating Kalaeloa Desalco", "label": "Kalaeloa Desalco" } } }, "auth_ref": [] }, "cwco_LabEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "LabEquipmentMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails", "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Lab equipment [Member]" } } }, "auth_ref": [] }, "us-gaap_LandMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LandMember", "presentation": [ "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Land [Member]", "documentation": "Part of earth's surface not covered by water." } } }, "auth_ref": [ "r1077" ] }, "us-gaap_LeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseCost", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Lease, Cost", "totalLabel": "Total lease costs", "documentation": "Amount of lease cost recognized by lessee for lease contract." } } }, "auth_ref": [ "r633", "r936" ] }, "us-gaap_LeaseCostTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseCostTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Lease, Cost [Table Text Block]", "terseLabel": "Schedule of Lease, Cost", "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." } } }, "auth_ref": [ "r1088" ] }, "us-gaap_LeaseholdImprovementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseholdImprovementsMember", "presentation": [ "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Leasehold Improvements [Member]", "documentation": "Additions or improvements to assets held under a lease arrangement." } } }, "auth_ref": [ "r177" ] }, "us-gaap_LeasesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeasesAbstract", "lang": { "en-us": { "role": { "label": "Leases" } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesTables" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]", "terseLabel": "Schedule of future lease payments relating to the Company's operating lease liabilities", "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." } } }, "auth_ref": [ "r1089" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due", "totalLabel": "Total future lease payments", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease." } } }, "auth_ref": [ "r640" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due after Year Five", "terseLabel": "Thereafter", "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)." } } }, "auth_ref": [ "r640" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months", "terseLabel": "2023", "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)." } } }, "auth_ref": [ "r640" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due Year Five", "terseLabel": "2027", "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)." } } }, "auth_ref": [ "r640" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due Year Four", "terseLabel": "2026", "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)." } } }, "auth_ref": [ "r640" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due Year Three", "terseLabel": "2025", "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)." } } }, "auth_ref": [ "r640" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payments, Due Year Two", "terseLabel": "2024", "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)." } } }, "auth_ref": [ "r640" ] }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "negatedLabel": "Less: imputed interest", "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease." } } }, "auth_ref": [ "r640" ] }, "cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesTables" ], "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" } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeasesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeasesTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureLeases" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Leases [Text Block]", "verboseLabel": "Leases", "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." } } }, "auth_ref": [ "r629" ] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Liabilities", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities", "totalLabel": "Total liabilities", "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." } } }, "auth_ref": [ "r32", "r270", "r360", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r589", "r592", "r593", "r611", "r760", "r916", "r950", "r1071", "r1092", "r1093" ] }, "us-gaap_LiabilitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Liabilities [Abstract]", "verboseLabel": "LIABILITIES" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities and Equity", "totalLabel": "Total liabilities and equity", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r148", "r196", "r686", "r937", "r1047", "r1059", "r1086" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities and Equity [Abstract]", "verboseLabel": "LIABILITIES AND EQUITY" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities, Current", "totalLabel": "Total current liabilities", "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." } } }, "auth_ref": [ "r34", "r233", "r270", "r360", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r589", "r592", "r593", "r611", "r937", "r1071", "r1092", "r1093" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities, Current [Abstract]", "terseLabel": "Current liabilities", "verboseLabel": "Current" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesNoncurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesNoncurrentAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Liabilities, Noncurrent [Abstract]", "verboseLabel": "Noncurrent" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" ], "lang": { "en-us": { "role": { "label": "Disposal Group, Including Discontinued Operation, Liabilities", "verboseLabel": "Total liabilities of discontinued operations", "documentation": "Amount classified as liabilities attributable to disposal group held for sale or disposed of." } } }, "auth_ref": [ "r5", "r117", "r133", "r178", "r230", "r231" ] }, "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Disposal Group, Including Discontinued Operation, Liabilities, Current", "verboseLabel": "Current liabilities of discontinued operations", "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." } } }, "auth_ref": [ "r5", "r117", "r133", "r176", "r178", "r230", "r231" ] }, "us-gaap_LitigationSettlementExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LitigationSettlementExpense", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "Litigation Settlement, Expense", "documentation": "Amount of litigation expense, including but not limited to legal, forensic, accounting, and investigative fees." } } }, "auth_ref": [] }, "us-gaap_LoansAndLeasesReceivableAllowanceForLoanLossesPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LoansAndLeasesReceivableAllowanceForLoanLossesPolicy", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Loans and Leases Receivable, Allowance for Loan Losses Policy [Policy Text Block]", "terseLabel": "Allowance for credit losses", "documentation": "Disclosure of accounting policy for estimating the allowance for losses on loans and lease receivables. The disclosure may include (a) how the entity determines each element of the allowance, (b) which loans are evaluated individually and which loans are evaluated as a group, (c) how the entity determines both the allocated and unallocated portions of the allowance, (d) how the entity determines the loss factors applied to graded loans in order to develop a general allowance, and (e) what self-correcting mechanism the entity uses to reduce differences between estimated and actual losses." } } }, "auth_ref": [ "r64" ] }, "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountsReceivableNet" ], "lang": { "en-us": { "role": { "label": "Loans, Notes, Trade and Other Receivables Disclosure [Text Block]", "terseLabel": "Accounts receivable, net", "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." } } }, "auth_ref": [ "r1055" ] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LocalPhoneNumber", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongLivedAssetsByGeographicAreasTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationTables" ], "lang": { "en-us": { "role": { "label": "Long-lived Assets by Geographic Areas [Table Text Block]", "terseLabel": "Schedule of long-lived assets by geographic areas", "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." } } }, "auth_ref": [ "r27" ] }, "us-gaap_LongTermDebtCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtCurrent", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Current Maturities", "terseLabel": "Current portion of long-term debt", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as current. Excludes lease obligation." } } }, "auth_ref": [ "r242" ] }, "us-gaap_LongTermDebtNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtNoncurrent", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Excluding Current Maturities", "terseLabel": "Long-term debt, noncurrent", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation." } } }, "auth_ref": [ "r243" ] }, "us-gaap_LongTermPurchaseCommitmentAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermPurchaseCommitmentAmount", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Purchase Commitment, Amount", "documentation": "The minimum amount the entity agreed to spend under the long-term purchase commitment." } } }, "auth_ref": [] }, "us-gaap_LossContingencyDamagesSoughtValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LossContingencyDamagesSoughtValue", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "Loss Contingency, Damages Sought, Value", "documentation": "The value (monetary amount) of the award the plaintiff seeks in the legal matter." } } }, "auth_ref": [ "r1067", "r1068", "r1069" ] }, "us-gaap_MaintenanceMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MaintenanceMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Maintenance [Member]", "documentation": "Process of preserving asset, including, but not limited to, building, machinery and software." } } }, "auth_ref": [ "r1077" ] }, "srt_MajorCustomersAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MajorCustomersAxis", "presentation": [ "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]" } } }, "auth_ref": [ "r349", "r922", "r1076", "r1105", "r1106" ] }, "cwco_ManagementContractsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ManagementContractsMember", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to management contracts.", "label": "Facility management contracts" } } }, "auth_ref": [] }, "cwco_ManagementEmployeesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ManagementEmployeesMember", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" ], "lang": { "en-us": { "role": { "label": "Management Employees [Member]" } } }, "auth_ref": [] }, "cwco_ManufacturingRevenuesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ManufacturingRevenuesMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "label": "Manufacturing revenue [Member]" } } }, "auth_ref": [] }, "cwco_ManufacturingUnitsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ManufacturingUnitsMember", "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" ], "lang": { "en-us": { "role": { "label": "Manufacturing Units [Member]" } } }, "auth_ref": [] }, "cwco_MaterialRawMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "MaterialRawMember", "presentation": [ "http://www.cwco.com/role/DisclosureInventoryDetails" ], "lang": { "en-us": { "role": { "documentation": "na", "label": "Raw Materials [Member]" } } }, "auth_ref": [] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MaximumMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails", "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Maximum [Member]" } } }, "auth_ref": [ "r397", "r398", "r399", "r400", "r512", "r653", "r710", "r752", "r753", "r818", "r839", "r844", "r845", "r874", "r904", "r905", "r918", "r920", "r932", "r938", "r1075", "r1094", "r1095", "r1096", "r1097", "r1098", "r1099" ] }, "ecd_MeasureAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MeasureAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure [Axis]", "terseLabel": "Measure:" } } }, "auth_ref": [ "r995" ] }, "ecd_MeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure Name", "terseLabel": "Name" } } }, "auth_ref": [ "r995" ] }, "cwco_MexicoProjectDevelopmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "MexicoProjectDevelopmentMember", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails", "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentFinancialInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represent the information pertaining to Mexico Project Development.", "label": "Mexico Project Development" } } }, "auth_ref": [] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MinimumMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails", "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails", "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails", "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]" } } }, "auth_ref": [ "r397", "r398", "r399", "r400", "r512", "r653", "r710", "r752", "r753", "r818", "r839", "r844", "r845", "r874", "r904", "r905", "r918", "r920", "r932", "r938", "r1075", "r1094", "r1095", "r1096", "r1097", "r1098", "r1099" ] }, "us-gaap_MinorityInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MinorityInterest", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Noncontrolling Interest", "verboseLabel": "Non-controlling interests", "documentation": "Amount of equity (deficit) attributable to noncontrolling interest. Excludes temporary equity." } } }, "auth_ref": [ "r41", "r195", "r270", "r360", "r401", "r403", "r404", "r405", "r408", "r409", "r611", "r685", "r764" ] }, "us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MinorityInterestOwnershipPercentageByNoncontrollingOwners", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "Noncontrolling Interest, Ownership Percentage by Noncontrolling Owners", "documentation": "The equity interest of noncontrolling shareholders, partners or other equity holders in consolidated entity." } } }, "auth_ref": [] }, "us-gaap_MinorityInterestOwnershipPercentageByParent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MinorityInterestOwnershipPercentageByParent", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Noncontrolling Interest, Ownership Percentage by Parent", "verboseLabel": "Ownership interest held", "documentation": "The parent entity's interest in net assets of the subsidiary, expressed as a percentage." } } }, "auth_ref": [] }, "ecd_MnpiDiscTimedForCompValFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MnpiDiscTimedForCompValFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "MNPI Disclosure Timed for Compensation Value [Flag]", "terseLabel": "MNPI Disclosure Timed for Compensation Value" } } }, "auth_ref": [ "r1015" ] }, "ecd_MtrlTermsOfTrdArrTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MtrlTermsOfTrdArrTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Material Terms of Trading Arrangement [Text Block]", "terseLabel": "Material Terms of Trading Arrangement" } } }, "auth_ref": [ "r1023" ] }, "cwco_NSCAguaMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "NSCAguaMember", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "NSC Agua [Member]" } } }, "auth_ref": [] }, "srt_NameOfMajorCustomerDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "NameOfMajorCustomerDomain", "presentation": [ "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]" } } }, "auth_ref": [ "r349", "r922", "r1076", "r1105", "r1106" ] }, "ecd_NamedExecutiveOfficersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NamedExecutiveOfficersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Named Executive Officers, Footnote [Text Block]", "terseLabel": "Named Executive Officers, Footnote" } } }, "auth_ref": [ "r996" ] }, "us-gaap_NatureOfOperations": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NatureOfOperations", "presentation": [ "http://www.cwco.com/role/DisclosurePrincipalActivity" ], "lang": { "en-us": { "role": { "label": "Nature of Operations [Text Block]", "terseLabel": "Principal activity", "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." } } }, "auth_ref": [ "r210", "r223" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities", "totalLabel": "Net cash used in financing activities", "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." } } }, "auth_ref": [ "r265" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]", "verboseLabel": "Cash flows from financing activities" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities", "totalLabel": "Net cash used in investing activities", "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." } } }, "auth_ref": [ "r265" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]", "verboseLabel": "Cash flows from investing activities" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities", "totalLabel": "Net cash provided by operating activities", "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." } } }, "auth_ref": [ "r166", "r167", "r168" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]", "verboseLabel": "Cash flows from operating activities" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities, Continuing Operations", "totalLabel": "Net cash provided by operating activities - continuing operations", "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." } } }, "auth_ref": [ "r166", "r167", "r168" ] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLoss", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.cwco.com/role/DisclosureConsolidatedStatementsOfCashFlowsCalc2": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails", "http://www.cwco.com/role/DisclosureContractsInProgressDetails", "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "totalLabel": "Net income attributable to Consolidated Water Co. Ltd. stockholders", "label": "Net Income (Loss)", "terseLabel": "Net Income (Loss)", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r153", "r168", "r201", "r231", "r252", "r253", "r257", "r270", "r279", "r283", "r284", "r285", "r286", "r289", "r290", "r304", "r320", "r334", "r340", "r343", "r360", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r604", "r611", "r694", "r784", "r807", "r808", "r917", "r948", "r1071" ] }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLossAvailableToCommonStockholdersBasic", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureEarningsPerShareDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/DisclosureEarningsPerShareDetails" ], "lang": { "en-us": { "role": { "label": "Net Income (Loss) Available to Common Stockholders, Basic", "totalLabel": "Net income available to common shares in the determination of basic earnings per common share", "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) available to common shareholders." } } }, "auth_ref": [ "r262", "r283", "r284", "r285", "r286", "r294", "r295", "r305", "r308", "r320", "r334", "r340", "r343", "r917" ] }, "us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureEarningsPerShareDetails": { "parentTag": "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureEarningsPerShareDetails" ], "lang": { "en-us": { "role": { "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", "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." } } }, "auth_ref": [ "r295", "r308" ] }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract", "lang": { "en-us": { "role": { "label": "Impact of recent accounting standards" } } }, "auth_ref": [] }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureImpactOfRecentAccountingStandards" ], "lang": { "en-us": { "role": { "label": "New Accounting Pronouncements and Changes in Accounting Principles [Text Block]", "verboseLabel": "Impact of recent accounting standards", "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." } } }, "auth_ref": [ "r219", "r220", "r222", "r228", "r277", "r278", "r281", "r282", "r291", "r292", "r362", "r363", "r573", "r574", "r575", "r599", "r601", "r605", "r606", "r607", "r612", "r613", "r614", "r627", "r628", "r642", "r657", "r658", "r659", "r714", "r715", "r716", "r717", "r718" ] }, "cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails" ], "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" } } }, "auth_ref": [] }, "cwco_NonExecutiveDirectorsSharePlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "NonExecutiveDirectorsSharePlanMember", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Non Executive Directors Share Plan [Member]" } } }, "auth_ref": [] }, "ecd_NonGaapMeasureDescriptionTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonGaapMeasureDescriptionTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-GAAP Measure Description [Text Block]", "terseLabel": "Non-GAAP Measure Description" } } }, "auth_ref": [ "r995" ] }, "ecd_NonNeosMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonNeosMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-NEOs [Member]", "terseLabel": "Non-NEOs" } } }, "auth_ref": [ "r964", "r976", "r986", "r1003", "r1012" ] }, "ecd_NonPeoNeoAvgCompActuallyPaidAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoAvgCompActuallyPaidAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Compensation Actually Paid Amount", "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount" } } }, "auth_ref": [ "r993" ] }, "ecd_NonPeoNeoAvgTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoAvgTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Total Compensation Amount", "terseLabel": "Non-PEO NEO Average Total Compensation Amount" } } }, "auth_ref": [ "r992" ] }, "ecd_NonPeoNeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO [Member]", "terseLabel": "Non-PEO NEO" } } }, "auth_ref": [ "r1003" ] }, "ecd_NonRule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted" } } }, "auth_ref": [ "r1023" ] }, "ecd_NonRule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated" } } }, "auth_ref": [ "r1023" ] }, "us-gaap_NoncashInvestingAndFinancingItemsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncashInvestingAndFinancingItemsAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Noncash Investing and Financing Items [Abstract]", "terseLabel": "Non-cash transactions:", "verboseLabel": "Non-cash transactions:" } } }, "auth_ref": [] }, "us-gaap_NoncompeteAgreementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncompeteAgreementsMember", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails", "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Non-compete agreements", "verboseLabel": "Non-compete agreement", "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party." } } }, "auth_ref": [ "r97" ] }, "us-gaap_NoncontrollingInterestMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncontrollingInterestMember", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Non controlling interests [Member]", "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." } } }, "auth_ref": [ "r99", "r416", "r1049", "r1050", "r1051", "r1110" ] }, "us-gaap_NonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Nonoperating Income (Expense)", "terseLabel": "Other income, net", "totalLabel": "Other income, net", "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)." } } }, "auth_ref": [ "r161" ] }, "us-gaap_NonoperatingIncomeExpenseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NonoperatingIncomeExpenseAbstract", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Nonoperating Income (Expense) [Abstract]", "verboseLabel": "Other income (expense):" } } }, "auth_ref": [] }, "cwco_NonperformancebasedGrantsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "NonperformancebasedGrantsMember", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Non-Performance-Based Grants [Member]" } } }, "auth_ref": [] }, "cwco_NumberOfDaysAfterConsumptionBillingsAreCollected": { "xbrltype": "durationItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "NumberOfDaysAfterConsumptionBillingsAreCollected", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" ], "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" } } }, "auth_ref": [] }, "cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue": { "xbrltype": "durationItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails", "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails" ], "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" } } }, "auth_ref": [] }, "cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised": { "xbrltype": "durationItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "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" } } }, "auth_ref": [] }, "cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock": { "xbrltype": "durationItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "NumberOfDaysOfAverageTradingPriceOfCommonStock", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "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" } } }, "auth_ref": [] }, "cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses": { "xbrltype": "durationItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "NumberOfDaysToSubmitListOfNonRecoverableExpenses", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "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" } } }, "auth_ref": [] }, "cwco_OfficeRentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "OfficeRentMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "documentation": "office rent", "label": "Office Rent [Member]" } } }, "auth_ref": [] }, "cwco_OneCustomerMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "OneCustomerMember", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to customer.", "label": "One Customer [Member]" } } }, "auth_ref": [] }, "us-gaap_OperatingCostsAndExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingCostsAndExpenses", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Related Party Transaction, Expenses from Transactions with Related Party", "terseLabel": "Amount of expense related to sublease agreement", "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Excludes Selling, General and Administrative Expense." } } }, "auth_ref": [] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails", "http://www.cwco.com/role/DisclosureContractsInProgressDetails", "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Operating Income (Loss)", "totalLabel": "Income from operations", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r320", "r334", "r340", "r343", "r917" ] }, "cwco_OperatingLeaseAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "OperatingLeaseAssetsCurrent", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of Operating Lease Assets Current.", "label": "Operating Lease Assets Current", "verboseLabel": "Operating lease assets, current" } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseCost", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails": { "parentTag": "us-gaap_LeaseCost", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Cost", "verboseLabel": "Operating lease costs", "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." } } }, "auth_ref": [ "r634", "r936" ] }, "cwco_OperatingLeaseCostsDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "OperatingLeaseCostsDiscontinuedOperations", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails": { "parentTag": "us-gaap_LeaseCost", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails" ], "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" } } }, "auth_ref": [] }, "cwco_OperatingLeaseDiscontinuedOperationsPayments": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "OperatingLeaseDiscontinuedOperationsPayments", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails" ], "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" } } }, "auth_ref": [] }, "cwco_OperatingLeaseLiabilitiesContinuingOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "OperatingLeaseLiabilitiesContinuingOperations", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails", "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Current", "negatedLabel": "Less: current obligations", "terseLabel": "Current maturities of operating leases", "verboseLabel": "Current maturities of operating leases", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r631" ] }, "cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "OperatingLeaseLiabilityIncludingDiscontinuedOperations", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails", "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "definitionGuidance": "Noncurrent lease obligations", "label": "Operating Lease, Liability, Noncurrent", "terseLabel": "Noncurrent operating leases", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r631" ] }, "us-gaap_OperatingLeasePayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeasePayments", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Payments", "verboseLabel": "Operating cash outflows for operating leases", "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use." } } }, "auth_ref": [ "r632", "r636" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Right-of-Use Asset", "terseLabel": "Operating lease right-of-use assets", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r630" ] }, "cwco_OperatingLeaseRightOfUseAssetNet": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "OperatingLeaseRightOfUseAssetNet", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Weighted Average Discount Rate, Percent", "verboseLabel": "Operating leases, weighted average discount rate", "documentation": "Weighted average discount rate for operating lease calculated at point in time." } } }, "auth_ref": [ "r639", "r936" ] }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Weighted Average Remaining Lease Term", "verboseLabel": "Operating leases, weighted average remaining lease term", "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." } } }, "auth_ref": [ "r638", "r936" ] }, "us-gaap_OperatingLossCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLossCarryforwards", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Operating Loss Carryforwards", "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws." } } }, "auth_ref": [ "r90" ] }, "cwco_OperationsAndMaintenanceMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "OperationsAndMaintenanceMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "documentation": "NA", "label": "Operations and Maintenance [Member]" } } }, "auth_ref": [] }, "cwco_OptionAgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "OptionAgreementMember", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "Option agreement [Member]" } } }, "auth_ref": [] }, "us-gaap_OptionIndexedToIssuersEquityTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OptionIndexedToIssuersEquityTypeAxis", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails", "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Option Indexed to Issuer's Equity, Type [Axis]", "documentation": "Information by type of freestanding contracts issued by an entity that are indexed to, and potentially settled in, an entity's own stock." } } }, "auth_ref": [ "r75", "r106", "r107", "r190" ] }, "us-gaap_OptionIndexedToIssuersEquityTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OptionIndexedToIssuersEquityTypeDomain", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails", "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Option Indexed to Issuer's Equity, Type [Domain]", "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." } } }, "auth_ref": [] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "lang": { "en-us": { "role": { "label": "Principal activity" } } }, "auth_ref": [] }, "us-gaap_OtherAmortizationOfDeferredCharges": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAmortizationOfDeferredCharges", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Amortization of Other Deferred Charges", "documentation": "Amount of amortization of other deferred costs recognized in the income statement." } } }, "auth_ref": [ "r12", "r159" ] }, "us-gaap_OtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssets", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Other Assets", "documentation": "Amount of assets classified as other." } } }, "auth_ref": [ "r191", "r240", "r677", "r950" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Assets, Noncurrent", "verboseLabel": "Other assets", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r240" ] }, "cwco_OtherAssetsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "OtherAssetsPolicyTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for other assets.", "label": "Other Assets [Policy Text Block]", "terseLabel": "Other assets" } } }, "auth_ref": [] }, "cwco_OtherCreditDeviceMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "OtherCreditDeviceMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "label": "Other Credit Device [Member]", "verboseLabel": "Other [Member]." } } }, "auth_ref": [] }, "us-gaap_OtherExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherExpenseMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Other [Member]", "documentation": "Primary financial statement caption encompassing other expense." } } }, "auth_ref": [ "r28" ] }, "us-gaap_OtherLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilitiesNoncurrent", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Liabilities, Noncurrent", "verboseLabel": "Other liabilities", "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r35" ] }, "us-gaap_OtherNonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "label": "Other Nonoperating Income (Expense)", "verboseLabel": "Other", "documentation": "Amount of income (expense) related to nonoperating activities, classified as other." } } }, "auth_ref": [ "r162" ] }, "ecd_OtherPerfMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OtherPerfMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Other Performance Measure, Amount", "terseLabel": "Other Performance Measure, Amount" } } }, "auth_ref": [ "r995" ] }, "us-gaap_OtherPostretirementBenefitPlansDefinedBenefitMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherPostretirementBenefitPlansDefinedBenefitMember", "presentation": [ "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails" ], "lang": { "en-us": { "role": { "label": "Defined contribution plan", "documentation": "Plan designed to provide other postretirement benefits. Includes, but is not limited to, defined benefit and defined contribution plans. Excludes pension benefits." } } }, "auth_ref": [ "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460", "r461", "r462", "r463", "r464", "r465", "r467", "r468", "r469", "r470", "r471", "r472", "r474", "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483", "r484", "r485", "r486", "r487", "r488", "r490", "r493", "r496", "r497", "r498", "r499", "r500", "r501", "r502", "r503", "r504", "r505", "r506", "r509", "r510", "r511", "r924", "r925", "r926", "r927", "r928" ] }, "us-gaap_OtherReceivablesNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherReceivablesNetCurrent", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails": { "parentTag": "us-gaap_AccountsReceivableGrossCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails" ], "lang": { "en-us": { "role": { "label": "Due from Affiliate, Current", "verboseLabel": "Receivable from OC-BVI", "documentation": "Amount, after allowance, of receivables classified as other, due within one year or the operating cycle, if longer." } } }, "auth_ref": [] }, "ecd_OutstandingAggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingAggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Aggregate Erroneous Compensation Amount", "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r962", "r974", "r984", "r1010" ] }, "ecd_OutstandingRecoveryCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingRecoveryCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery Compensation Amount", "terseLabel": "Compensation Amount" } } }, "auth_ref": [ "r965", "r977", "r987", "r1013" ] }, "ecd_OutstandingRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r965", "r977", "r987", "r1013" ] }, "srt_OwnershipAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "OwnershipAxis", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails", "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Ownership [Axis]" } } }, "auth_ref": [] }, "srt_OwnershipDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "OwnershipDomain", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails", "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Ownership [Domain]" } } }, "auth_ref": [] }, "ecd_PayVsPerformanceDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PayVsPerformanceDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Line Items]", "terseLabel": "Pay vs Performance Disclosure" } } }, "auth_ref": [ "r991" ] }, "cwco_PaymentForLandAndRightOfWayHeldForDevelopment": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "PaymentForLandAndRightOfWayHeldForDevelopment", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_PaymentsOfDividendsCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsOfDividendsCommonStock", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments of Ordinary Dividends, Common Stock", "negatedLabel": "Dividends paid to common shareholders", "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity." } } }, "auth_ref": [ "r45" ] }, "us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsOfDividendsPreferredStockAndPreferenceStock", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments of Ordinary Dividends, Preferred Stock and Preference Stock", "negatedLabel": "Dividends paid to preferred shareholders", "documentation": "Amount of cash outflow in the form of ordinary dividends to preferred shareholders of the parent entity." } } }, "auth_ref": [ "r45" ] }, "us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireAdditionalInterestInSubsidiaries", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments to Acquire Additional Interest in Subsidiaries", "negatedLabel": "Purchase of non-controlling interest in PERC", "documentation": "The cash outflow associated with the purchase of noncontrolling interest during the period." } } }, "auth_ref": [ "r43" ] }, "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 6.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments to Acquire Businesses, Net of Cash Acquired", "negatedLabel": "Acquisition of REC, net of cash acquired", "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase." } } }, "auth_ref": [ "r43" ] }, "cwco_PaymentsToAcquireCertificatesOfDeposit": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "PaymentsToAcquireCertificatesOfDeposit", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "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" } } }, "auth_ref": [] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments to Acquire Property, Plant, and Equipment", "negatedLabel": "Additions to property, plant and equipment and construction in progress", "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." } } }, "auth_ref": [ "r165" ] }, "us-gaap_PaymentsToMinorityShareholders": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToMinorityShareholders", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments to Noncontrolling Interests", "negatedLabel": "Dividends paid to non-controlling interests", "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." } } }, "auth_ref": [ "r44" ] }, "ecd_PeerGroupIssuersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeerGroupIssuersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Peer Group Issuers, Footnote [Text Block]", "terseLabel": "Peer Group Issuers, Footnote" } } }, "auth_ref": [ "r994" ] }, "ecd_PeerGroupTotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeerGroupTotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Peer Group Total Shareholder Return Amount", "terseLabel": "Peer Group Total Shareholder Return Amount" } } }, "auth_ref": [ "r994" ] }, "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureRetirementBenefits" ], "lang": { "en-us": { "role": { "label": "Pension and Other Postretirement Benefits Disclosure [Text Block]", "terseLabel": "Retirement benefits", "documentation": "The entire disclosure for retirement benefits." } } }, "auth_ref": [ "r441", "r464", "r466", "r472", "r489", "r491", "r492", "r493", "r494", "r495", "r507", "r508", "r509", "r924" ] }, "ecd_PeoActuallyPaidCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoActuallyPaidCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Actually Paid Compensation Amount", "terseLabel": "PEO Actually Paid Compensation Amount" } } }, "auth_ref": [ "r993" ] }, "ecd_PeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO [Member]", "terseLabel": "PEO" } } }, "auth_ref": [ "r1003" ] }, "ecd_PeoName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Name", "terseLabel": "PEO Name" } } }, "auth_ref": [ "r996" ] }, "ecd_PeoTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Total Compensation Amount", "terseLabel": "PEO Total Compensation Amount" } } }, "auth_ref": [ "r992" ] }, "cwco_PercWaterCorporationMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "PercWaterCorporationMember", "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" ], "lang": { "en-us": { "role": { "documentation": "This member stands for PERC Water Corporation.", "label": "PERC Water Corporation" } } }, "auth_ref": [] }, "cwco_PercentageOfDelinquentAccountsReceivableBalance": { "xbrltype": "percentItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "PercentageOfDelinquentAccountsReceivableBalance", "presentation": [ "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "documentation": "Percentage of delinquent account receivable balanc.e", "label": "Percentage of Delinquent Accounts Receivable Balance", "terseLabel": "Percentage of delinquent account receivables" } } }, "auth_ref": [] }, "cwco_PerformancebasedGrantsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "PerformancebasedGrantsMember", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Performance-Based Grants [Member]" } } }, "auth_ref": [] }, "cwco_PeriodInWhichConstructionMustBeCompleted": { "xbrltype": "durationItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "PeriodInWhichConstructionMustBeCompleted", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "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" } } }, "auth_ref": [] }, "cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct": { "xbrltype": "durationItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "PeriodRequiredToOperateAndMaintainPlantAndAqueduct", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "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" } } }, "auth_ref": [] }, "cwco_PlantAndEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "PlantAndEquipmentMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails", "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Plant And Equipment [Member]" } } }, "auth_ref": [] }, "us-gaap_PreferredStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockMember", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Preferred stock [Member]", "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." } } }, "auth_ref": [ "r939", "r940", "r943", "r944", "r945", "r946", "r1107", "r1110" ] }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockParOrStatedValuePerShare", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Par or Stated Value Per Share", "verboseLabel": "Redeemable preferred stock, par value (in dollars per share)", "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer." } } }, "auth_ref": [ "r142", "r411" ] }, "us-gaap_PreferredStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesAuthorized", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Shares Authorized", "verboseLabel": "Redeemable preferred stock, authorized", "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." } } }, "auth_ref": [ "r142", "r762" ] }, "us-gaap_PreferredStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesIssued", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Shares Issued", "verboseLabel": "Redeemable preferred stock, issued", "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." } } }, "auth_ref": [ "r142", "r411" ] }, "us-gaap_PreferredStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesOutstanding", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Shares Outstanding", "verboseLabel": "Redeemable preferred stock, outstanding", "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." } } }, "auth_ref": [ "r142", "r762", "r782", "r1110", "r1111" ] }, "us-gaap_PreferredStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockValue", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Value, Issued", "terseLabel": "Redeemable preferred stock, $0.60 par value. Authorized 200,000 shares; issued and outstanding 44,297 and 34,383 shares, respectively", "verboseLabel": "Preferred stock value", "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." } } }, "auth_ref": [ "r142", "r682", "r937" ] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrepaidExpenseAndOtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Prepaid Expense and Other Assets, Current", "verboseLabel": "Prepaid expenses and other current assets", "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." } } }, "auth_ref": [ "r1042" ] }, "us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrepaidExpensesAndOtherCurrentAssetsMember", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Prepaid Expenses and Other Current Assets [Member]", "documentation": "Primary financial statement caption encompassing prepaid expenses and other current assets." } } }, "auth_ref": [] }, "us-gaap_PriorPeriodReclassificationAdjustmentDescription": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PriorPeriodReclassificationAdjustmentDescription", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Reclassification, Policy [Policy Text Block]", "terseLabel": "Comparative amounts", "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." } } }, "auth_ref": [ "r1037" ] }, "us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromRepurchaseOfRedeemablePreferredStock", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "definitionGuidance": "Buyback of redeemable preferred stock", "label": "Proceeds from (Repurchase of) Redeemable Preferred Stock", "documentation": "Cash inflows (outflows) from issuing and redeeming redeemable preferred stock; includes convertible and nonconvertible redeemable preferred stock." } } }, "auth_ref": [] }, "us-gaap_ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromSaleAndMaturityOfHeldToMaturitySecurities", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Sale and Maturity of Held-to-Maturity Securities", "terseLabel": "Maturity of certificate of deposit", "documentation": "Amount of cash inflow from the sale or maturity of long-term held-to-maturity securities." } } }, "auth_ref": [ "r42", "r1057" ] }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Sale of Property, Plant, and Equipment", "terseLabel": "Proceeds from asset dispositions", "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." } } }, "auth_ref": [ "r164" ] }, "us-gaap_ProceedsFromStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromStockOptionsExercised", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Stock Options Exercised", "verboseLabel": "Proceeds received from exercise of stock options", "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement." } } }, "auth_ref": [ "r7", "r24" ] }, "cwco_ProfessionalsFeeMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ProfessionalsFeeMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" ], "lang": { "en-us": { "role": { "label": "Professional fees [Member]" } } }, "auth_ref": [] }, "us-gaap_ProfitLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProfitLoss", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 1.0 }, "http://www.cwco.com/role/DisclosureConsolidatedStatementsOfCashFlowsCalc2": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows", "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "definitionGuidance": "Net income", "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest", "verboseLabel": "Net income", "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest." } } }, "auth_ref": [ "r231", "r252", "r253", "r264", "r270", "r279", "r289", "r290", "r320", "r334", "r340", "r343", "r360", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r587", "r590", "r591", "r604", "r611", "r675", "r693", "r735", "r784", "r807", "r808", "r917", "r934", "r935", "r949", "r1043", "r1071" ] }, "cwco_ProfitLossFromSubsidiaries": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ProfitLossFromSubsidiaries", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "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" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentAbstract", "lang": { "en-us": { "role": { "label": "Property, plant and equipment and construction in progress" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentByTypeAxis", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails", "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Type [Axis]", "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale." } } }, "auth_ref": [ "r13" ] }, "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentDisclosureTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgress" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment Disclosure [Text Block]", "terseLabel": "Property, plant and equipment and construction in progress", "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." } } }, "auth_ref": [ "r175", "r213", "r216", "r217" ] }, "us-gaap_PropertyPlantAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentGross", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Gross", "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." } } }, "auth_ref": [ "r177", "r236", "r689" ] }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentLineItems", "presentation": [ "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Line Items]", "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." } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 }, "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "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" ], "lang": { "en-us": { "role": { "definitionGuidance": "Property, plant and equipment, net", "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", "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." } } }, "auth_ref": [ "r13", "r676", "r689", "r937" ] }, "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentPolicyTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Policy [Policy Text Block]", "terseLabel": "Property, plant and equipment, net", "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." } } }, "auth_ref": [ "r13", "r213", "r216", "r687" ] }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressTables" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Table Text Block]", "terseLabel": "Schedule of Property, plant and equipment and construction in progress", "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." } } }, "auth_ref": [ "r13" ] }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTypeDomain", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails", "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Type [Domain]", "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." } } }, "auth_ref": [ "r177" ] }, "us-gaap_PropertyPlantAndEquipmentUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentUsefulLife", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Useful Life", "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." } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentUsefulLifeDescriptionOfTermExtensibleEnumeration": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentUsefulLifeDescriptionOfTermExtensibleEnumeration", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Estimated Useful Lives", "documentation": "Indicates description of term of useful life for property, plant, and equipment when not stated as numeric value." } } }, "auth_ref": [ "r1063" ] }, "us-gaap_ProvisionForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProvisionForDoubtfulAccounts", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Provision for Doubtful Accounts", "verboseLabel": "Provision for credit losses", "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable." } } }, "auth_ref": [ "r261", "r366" ] }, "cwco_PurchaseOfRemainingNonControllingInterestsInPerc": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "PurchaseOfRemainingNonControllingInterestsInPerc", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "documentation": "Refers to purchase of remaining non-controlling interests in PERC.", "label": "Purchase of Remaining Non-Controlling Interests in PERC" } } }, "auth_ref": [] }, "ecd_PvpTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PvpTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Table]", "terseLabel": "Pay vs Performance Disclosure" } } }, "auth_ref": [ "r991" ] }, "ecd_PvpTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PvpTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance [Table Text Block]", "terseLabel": "Pay vs Performance Disclosure, Table" } } }, "auth_ref": [ "r991" ] }, "cwco_RameyEnvironmentalComplianceInc.Member": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "RameyEnvironmentalComplianceInc.Member", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for Ramey Environmental Compliance, Inc.", "label": "Ramey Environmental Compliance, Inc." } } }, "auth_ref": [] }, "cwco_RameyEnvironmentalComplianceIncMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "RameyEnvironmentalComplianceIncMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails" ], "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": "Ramey Environmental Compliance, Inc (REC)" } } }, "auth_ref": [] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeAxis", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails", "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails", "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails", "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Range [Axis]" } } }, "auth_ref": [ "r397", "r398", "r399", "r400", "r464", "r512", "r542", "r543", "r544", "r652", "r653", "r710", "r752", "r753", "r818", "r839", "r844", "r845", "r874", "r904", "r905", "r918", "r920", "r932", "r938", "r941", "r1065", "r1075", "r1095", "r1096", "r1097", "r1098", "r1099" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails", "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails", "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails", "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Range [Domain]" } } }, "auth_ref": [ "r397", "r398", "r399", "r400", "r464", "r512", "r542", "r543", "r544", "r652", "r653", "r710", "r752", "r753", "r818", "r839", "r844", "r845", "r874", "r904", "r905", "r918", "r920", "r932", "r938", "r941", "r1065", "r1075", "r1095", "r1096", "r1097", "r1098", "r1099" ] }, "us-gaap_ReceivablesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReceivablesAbstract", "lang": { "en-us": { "role": { "label": "Accounts receivable, net." } } }, "auth_ref": [] }, "ecd_RecoveryOfErrCompDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RecoveryOfErrCompDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]", "terseLabel": "Recovery of Erroneously Awarded Compensation Disclosure" } } }, "auth_ref": [ "r957", "r969", "r979", "r1005" ] }, "cwco_RedeemablePreferredStockIssuedDuringPeriodValueIssuedForServices": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "RedeemablePreferredStockIssuedDuringPeriodValueIssuedForServices", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Value of redeemable preferred stock issued in lieu of cash for services contributed to the entity. Value of the stock issued includes, but is not limited to, services contributed by vendors and founders.", "label": "Redeemable Preferred Stock Issued During Period Value Issued For Services", "verboseLabel": "Issuance of 13,309 and 9,295, respectively, shares of redeemable preferred stock for services rendered" } } }, "auth_ref": [] }, "us-gaap_RedeemablePreferredStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RedeemablePreferredStockMember", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails", "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlowsParenthetical", "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Redeemable preferred stock [Member]", "documentation": "Description of type or class of redeemable preferred stock. For instance, cumulative preferred stock, noncumulative preferred stock, convertible or series." } } }, "auth_ref": [ "r29", "r76", "r270", "r360", "r401", "r403", "r404", "r405", "r408", "r409", "r611" ] }, "us-gaap_RelatedPartyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyDomain", "presentation": [ "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Related Party [Domain]", "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." } } }, "auth_ref": [ "r490", "r646", "r647", "r755", "r756", "r757", "r758", "r759", "r781", "r783", "r814" ] }, "us-gaap_RelatedPartyTransactionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionLineItems", "presentation": [ "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Related Party Transaction [Line Items]", "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." } } }, "auth_ref": [ "r788", "r789", "r792" ] }, "us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionPurchasesFromRelatedParty", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical" ], "lang": { "en-us": { "role": { "label": "Related Party Transaction, Purchases from Related Party", "terseLabel": "Purchases of services", "verboseLabel": "Purchases from related parties", "documentation": "Purchases during the period (excluding transactions that are eliminated in consolidated or combined financial statements) with related party." } } }, "auth_ref": [] }, "us-gaap_RelatedPartyTransactionsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionsAbstract", "lang": { "en-us": { "role": { "label": "Related party transactions" } } }, "auth_ref": [] }, "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionsByRelatedPartyAxis", "presentation": [ "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Related Party [Axis]", "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." } } }, "auth_ref": [ "r490", "r646", "r647", "r661", "r662", "r663", "r664", "r665", "r666", "r667", "r668", "r669", "r670", "r671", "r672", "r755", "r756", "r757", "r758", "r759", "r781", "r783", "r814", "r1091" ] }, "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionsDisclosureTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureRelatedPartyTransactions" ], "lang": { "en-us": { "role": { "label": "Related Party Transactions Disclosure [Text Block]", "terseLabel": "Related party transactions", "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." } } }, "auth_ref": [ "r643", "r644", "r645", "r647", "r648", "r731", "r732", "r733", "r790", "r791", "r792", "r812", "r813" ] }, "us-gaap_RepaymentsOfLongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RepaymentsOfLongTermDebt", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Repayments of Long-term Debt", "negatedLabel": "Principal repayments on long-term debt", "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer." } } }, "auth_ref": [ "r46", "r728" ] }, "ecd_RestatementDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDateAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date [Axis]", "terseLabel": "Restatement Determination Date:" } } }, "auth_ref": [ "r958", "r970", "r980", "r1006" ] }, "ecd_RestatementDeterminationDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDeterminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date", "terseLabel": "Restatement Determination Date" } } }, "auth_ref": [ "r959", "r971", "r981", "r1007" ] }, "ecd_RestatementDoesNotRequireRecoveryTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDoesNotRequireRecoveryTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Does Not Require Recovery [Text Block]", "terseLabel": "Restatement does not require Recovery" } } }, "auth_ref": [ "r966", "r978", "r988", "r1014" ] }, "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents [Domain]", "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." } } }, "auth_ref": [ "r235" ] }, "cwco_RetailRevenuesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "RetailRevenuesMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "label": "Retail revenue [Member]" } } }, "auth_ref": [] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Retained Earnings (Accumulated Deficit)", "verboseLabel": "Retained earnings", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r145", "r182", "r684", "r714", "r718", "r729", "r763", "r937" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsMember", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Retained earnings [Member]", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r226", "r274", "r275", "r276", "r280", "r288", "r290", "r361", "r364", "r551", "r552", "r553", "r571", "r572", "r594", "r596", "r597", "r600", "r602", "r711", "r713", "r736", "r1110" ] }, "us-gaap_RetirementPlanTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetirementPlanTypeAxis", "presentation": [ "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails" ], "lang": { "en-us": { "role": { "label": "Retirement Plan Type [Axis]", "documentation": "Information by type of retirement benefit plan. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement." } } }, "auth_ref": [ "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460", "r461", "r462", "r463", "r464", "r465", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483", "r484", "r485", "r486", "r487", "r488", "r490", "r493", "r496", "r497", "r498", "r499", "r500", "r501", "r502", "r503", "r504", "r505", "r506", "r509", "r510", "r511", "r514", "r924", "r925", "r926", "r927", "r928", "r929", "r930", "r931" ] }, "us-gaap_RetirementPlanTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetirementPlanTypeDomain", "presentation": [ "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails" ], "lang": { "en-us": { "role": { "label": "Retirement Plan Type [Domain]", "documentation": "Type of plan designed to provide participants with retirement benefits. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement." } } }, "auth_ref": [ "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460", "r461", "r462", "r463", "r464", "r465", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483", "r484", "r485", "r486", "r487", "r488", "r490", "r493", "r496", "r497", "r498", "r499", "r500", "r501", "r502", "r503", "r504", "r505", "r506", "r509", "r510", "r511", "r514", "r924", "r925", "r926", "r927", "r928", "r929", "r930", "r931" ] }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerAbstract", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "label": "Contracts in progress." } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerIncludingAssessedTax", "crdr": "credit", "calculation": { "http://www.cwco.com/role/DisclosureContractsInProgressDetails": { "parentTag": "cwco_ContractWithCustomerNetOverbillings", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer, Including Assessed Tax", "verboseLabel": "Revenues recognized to date on contracts in process", "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." } } }, "auth_ref": [ "r321", "r322", "r333", "r338", "r339", "r345", "r347", "r349", "r436", "r437", "r655" ] }, "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerPolicyTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer [Policy Text Block]", "terseLabel": "Contract assets and liabilities", "documentation": "Disclosure of accounting policy for revenue from contract with customer." } } }, "auth_ref": [ "r224", "r428", "r429", "r430", "r431", "r432", "r433", "r434", "r435", "r907" ] }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgress" ], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer [Text Block]", "terseLabel": "Contracts in progress", "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." } } }, "auth_ref": [ "r224", "r420", "r421", "r422", "r423", "r424", "r425", "r426", "r427", "r440" ] }, "us-gaap_RevenueRecognitionPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRecognitionPolicyTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Revenue Recognition, Policy [Policy Text Block]", "verboseLabel": "Revenue recognition", "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources." } } }, "auth_ref": [ "r786", "r907", "r914" ] }, "us-gaap_Revenues": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Revenues", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": { "parentTag": "us-gaap_GrossProfit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails", "http://www.cwco.com/role/DisclosureSegmentInformationDetails", "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "definitionGuidance": "Total Revenue", "label": "Revenues", "terseLabel": "Revenue", "verboseLabel": "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)." } } }, "auth_ref": [ "r259", "r270", "r321", "r322", "r333", "r338", "r339", "r345", "r347", "r349", "r360", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r611", "r675", "r1071" ] }, "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "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", "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability." } } }, "auth_ref": [ "r637", "r936" ] }, "cwco_RoyaltiesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "RoyaltiesMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Retail license royalties [Member]" } } }, "auth_ref": [] }, "ecd_Rule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Adopted" } } }, "auth_ref": [ "r1023" ] }, "ecd_Rule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Terminated" } } }, "auth_ref": [ "r1023" ] }, "srt_ScenarioForecastMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ScenarioForecastMember", "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Forecast [Member]" } } }, "auth_ref": [ "r513", "r1052" ] }, "srt_ScenarioUnspecifiedDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ScenarioUnspecifiedDomain", "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Scenario, Unspecified [Domain]" } } }, "auth_ref": [ "r291", "r513", "r1032", "r1052" ] }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountsReceivableNetTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]", "terseLabel": "Schedule of Accounts receivable", "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." } } }, "auth_ref": [ "r40" ] }, "us-gaap_ScheduleOfCashAndCashEquivalentsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfCashAndCashEquivalentsTable", "presentation": [ "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Cash and Cash Equivalents [Table]", "documentation": "Schedule of cash and cash equivalent balances. This table excludes restricted cash balances." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfCashAndCashEquivalentsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfCashAndCashEquivalentsTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Cash and Cash Equivalents [Table Text Block]", "terseLabel": "Schedule of Cash and cash equivalents", "documentation": "Tabular disclosure of the components of cash and cash equivalents." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureLeasesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Cash Flow, Supplemental Disclosures [Table Text Block]", "terseLabel": "Schedule of Cash Flow, Supplemental", "documentation": "Tabular disclosure of supplemental cash flow information for the periods presented." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesTables" ], "lang": { "en-us": { "role": { "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", "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." } } }, "auth_ref": [ "r187" ] }, "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesTables" ], "lang": { "en-us": { "role": { "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", "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." } } }, "auth_ref": [ "r186" ] }, "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDefinedBenefitPlansDisclosuresTable", "presentation": [ "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Defined Benefit Plans Disclosures [Table]", "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)." } } }, "auth_ref": [ "r16", "r78", "r79", "r80", "r81" ] }, "us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsTables" ], "lang": { "en-us": { "role": { "label": "Disposal Groups, Including Discontinued Operations [Table Text Block]", "verboseLabel": "Schedule of financial information for Mexico project development", "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." } } }, "auth_ref": [ "r15", "r25", "r30", "r117", "r126", "r127", "r128", "r129", "r130", "r134", "r136", "r137", "r179" ] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureEarningsPerShareTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "verboseLabel": "Schedule of computation of basic and diluted EPS", "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." } } }, "auth_ref": [ "r1054" ] }, "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]", "verboseLabel": "Schedule of reconciliation of federal tax rate to the effective rate", "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." } } }, "auth_ref": [ "r185" ] }, "srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "Investment, Name [Axis]" } } }, "auth_ref": [ "r357", "r358", "r359" ] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]", "terseLabel": "Schedule of Finite-Lived Intangible Assets", "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment." } } }, "auth_ref": [ "r68", "r71" ] }, "us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Income before Income Tax, Domestic and Foreign [Table Text Block]", "verboseLabel": "Schedule of components of income before income taxes", "documentation": "Tabular disclosure of income before income tax between domestic and foreign jurisdictions." } } }, "auth_ref": [ "r1048" ] }, "us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfIndefiniteLivedIntangibleAssetsTable", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails", "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Indefinite-Lived Intangible Assets [Table]", "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance and exist in perpetuity." } } }, "auth_ref": [ "r26", "r174" ] }, "us-gaap_ScheduleOfInventoryNoncurrentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfInventoryNoncurrentTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureInventoryTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Inventory, Noncurrent [Table Text Block]", "terseLabel": "Schedule of Inventory", "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." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfInvestmentsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfInvestmentsLineItems", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Investments [Line Items]", "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." } } }, "auth_ref": [ "r815", "r816", "r817", "r818", "r819", "r820", "r821", "r822", "r823", "r824", "r825", "r826", "r827", "r828", "r829", "r830", "r831", "r832", "r833", "r834", "r836", "r838", "r841", "r842", "r843", "r844", "r845", "r846", "r847", "r848", "r849", "r850", "r851", "r852", "r853", "r854", "r855", "r856", "r857", "r858", "r859", "r860", "r861", "r862", "r863", "r864", "r865", "r866", "r867", "r868", "r869", "r870", "r871", "r872", "r873", "r874", "r875", "r876", "r877", "r878", "r879", "r880", "r881", "r882", "r883" ] }, "us-gaap_ScheduleOfInvestmentsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfInvestmentsTable", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Investments [Table]", "documentation": "Disclosure of information about investments owned by investment company." } } }, "auth_ref": [ "r815", "r816", "r817", "r818", "r819", "r820", "r821", "r822", "r823", "r824", "r825", "r826", "r827", "r828", "r829", "r830", "r831", "r832", "r833", "r834", "r836", "r838", "r841", "r842", "r843", "r844", "r845", "r846", "r847", "r848", "r849", "r850", "r851", "r852", "r853", "r854", "r855", "r856", "r857", "r858", "r859", "r860", "r861", "r862", "r863", "r864", "r865", "r866", "r867", "r869", "r870", "r871", "r872", "r873", "r874", "r875", "r876", "r877", "r878", "r879", "r880", "r881", "r882", "r883" ] }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "presentation": [ "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Table]", "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." } } }, "auth_ref": [ "r13" ] }, "cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesTables" ], "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" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfRelatedPartyTransactionsByRelatedPartyTable", "presentation": [ "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Related Party Transactions, by Related Party [Table]", "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." } } }, "auth_ref": [ "r113", "r114", "r788", "r789", "r792" ] }, "us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationTables" ], "lang": { "en-us": { "role": { "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", "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." } } }, "auth_ref": [ "r62", "r155" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTable", "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" ], "lang": { "en-us": { "role": { "label": "Schedule of Segment Reporting Information, by Segment [Table]", "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." } } }, "auth_ref": [ "r59", "r60", "r61", "r65" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]", "verboseLabel": "Schedule of segment reporting information, by segment", "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." } } }, "auth_ref": [ "r59", "r60", "r61", "r65" ] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails", "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails", "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]", "documentation": "Disclosure of information about share-based payment arrangement." } } }, "auth_ref": [ "r516", "r518", "r520", "r521", "r522", "r523", "r524", "r525", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r537", "r538", "r539", "r540", "r541", "r542", "r543", "r544", "r545" ] }, "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation, Stock Options, Activity [Table Text Block]", "terseLabel": "Schedule of company's stock option activity", "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." } } }, "auth_ref": [ "r22", "r23", "r84" ] }, "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]", "terseLabel": "Schedule of significant weighted average assumptions", "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." } } }, "auth_ref": [ "r184" ] }, "cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ScheduleOfSupplementalDisclosureOfCashFlowInformation", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationTables" ], "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" } } }, "auth_ref": [] }, "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]", "terseLabel": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense", "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets." } } }, "auth_ref": [ "r71" ] }, "cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity": { "xbrltype": "volumeItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "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" } } }, "auth_ref": [] }, "cwco_SecondPhaseMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "SecondPhaseMember", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "Second Phase [Member]" } } }, "auth_ref": [] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "Security12bTitle", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Title of 12(b) Security", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r951" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "SecurityExchangeName", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r953" ] }, "us-gaap_SegmentDiscontinuedOperationsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentDiscontinuedOperationsMember", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails", "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentFinancialInformationDetails", "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails", "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Discontinued Operations.", "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." } } }, "auth_ref": [ "r8", "r118", "r119", "r120" ] }, "us-gaap_SegmentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentDomain", "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" ], "lang": { "en-us": { "role": { "label": "Segments [Domain]", "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." } } }, "auth_ref": [ "r317", "r320", "r321", "r322", "r323", "r324", "r325", "r326", "r327", "r328", "r329", "r330", "r331", "r333", "r334", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r343", "r349", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r393", "r394", "r699", "r700", "r701", "r702", "r703", "r704", "r705", "r706", "r707", "r708", "r709", "r919", "r1035", "r1105" ] }, "srt_SegmentGeographicalDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "SegmentGeographicalDomain", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails", "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" ], "lang": { "en-us": { "role": { "label": "Geographical [Domain]" } } }, "auth_ref": [ "r347", "r348", "r749", "r750", "r751", "r824", "r840", "r861", "r880", "r894", "r895", "r896", "r897", "r898", "r899", "r900", "r901", "r902", "r908", "r921", "r941", "r1076", "r1105" ] }, "us-gaap_SegmentReportingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingAbstract", "lang": { "en-us": { "role": { "label": "Segment information" } } }, "auth_ref": [] }, "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingDisclosureTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformation" ], "lang": { "en-us": { "role": { "label": "Segment Reporting Disclosure [Text Block]", "verboseLabel": "Segment information", "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." } } }, "auth_ref": [ "r316", "r317", "r318", "r319", "r320", "r332", "r337", "r341", "r342", "r343", "r344", "r345", "r346", "r349" ] }, "us-gaap_SegmentReportingInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingInformationLineItems", "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" ], "lang": { "en-us": { "role": { "label": "Segment Reporting Information [Line Items]", "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." } } }, "auth_ref": [] }, "cwco_SegmentRetailMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "SegmentRetailMember", "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" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to Retail.", "label": "Retail [Member]" } } }, "auth_ref": [] }, "cwco_ServicesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ServicesMember", "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" ], "lang": { "en-us": { "role": { "label": "Services [Member]" } } }, "auth_ref": [] }, "cwco_ServicesRevenuesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ServicesRevenuesMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "label": "Services revenue [Member]" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensation", "crdr": "debit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation", "verboseLabel": "Compensation expense relating to stock and stock option grants", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r11" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period", "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." } } }, "auth_ref": [ "r933" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate", "verboseLabel": "Expected dividend yield", "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." } } }, "auth_ref": [ "r543" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate", "verboseLabel": "Expected volatility", "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." } } }, "auth_ref": [ "r542" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate", "terseLabel": "Risk free interest rate", "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares." } } }, "auth_ref": [ "r544" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails", "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails", "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]", "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." } } }, "auth_ref": [ "r516", "r518", "r520", "r521", "r522", "r523", "r524", "r525", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r537", "r538", "r539", "r540", "r541", "r542", "r543", "r544", "r545" ] }, "cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value", "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." } } }, "auth_ref": [ "r538" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period", "negatedLabel": "Forfeited/expired - Options", "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." } } }, "auth_ref": [ "r1078" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "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", "documentation": "Weighted average price of options that were either forfeited or expired." } } }, "auth_ref": [ "r1078" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails", "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "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", "documentation": "Gross number of share options (or share units) granted during the period." } } }, "auth_ref": [ "r527" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value", "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology." } } }, "auth_ref": [ "r537" ] }, "cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm": { "xbrltype": "durationItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value", "periodEndLabel": "Outstanding-Aggregate Intrinsic Value", "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding." } } }, "auth_ref": [ "r83" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "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", "documentation": "Number of options outstanding, including both vested and non-vested options." } } }, "auth_ref": [ "r523", "r524" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "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", "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan." } } }, "auth_ref": [ "r523", "r524" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "All Award Types", "terseLabel": "All Award Types", "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r520", "r521", "r522", "r523", "r524", "r525", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r537", "r538", "r539", "r540", "r541", "r542", "r543", "r544", "r545" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price", "terseLabel": "Exercised-Weighted Average Exercise Price", "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares." } } }, "auth_ref": [ "r528" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price", "terseLabel": "Granted-Weighted Average Exercise Price", "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options." } } }, "auth_ref": [ "r527" ] }, "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" ], "lang": { "en-us": { "role": { "label": "Exercise Price Range [Axis]", "documentation": "Information by range of option prices pertaining to options granted." } } }, "auth_ref": [ "r85" ] }, "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Domain]", "documentation": "Supplementary information on outstanding and exercisable share awards as of the balance sheet date which stratifies outstanding options by ranges of exercise prices." } } }, "auth_ref": [ "r86" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term", "verboseLabel": "Expected option life (years)", "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." } } }, "auth_ref": [ "r541" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Number of Shares", "documentation": "Number of non-vested options outstanding." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Option, Nonvested, Weighted Average Exercise Price", "documentation": "Weighted average grant-date fair value of non-vested options outstanding." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "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)", "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." } } }, "auth_ref": [ "r183" ] }, "us-gaap_SharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharesOutstanding", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Shares, Outstanding", "periodEndLabel": "Balance (in shares)", "periodStartLabel": "Balance (in shares)", "documentation": "Number of shares issued which are neither cancelled nor held in the treasury." } } }, "auth_ref": [] }, "us-gaap_ShortTermLeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShortTermLeaseCost", "crdr": "debit", "calculation": { "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails": { "parentTag": "us-gaap_LeaseCost", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Short-term Lease, Cost", "verboseLabel": "Short-term lease costs", "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less." } } }, "auth_ref": [ "r635", "r936" ] }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SignificantAccountingPoliciesTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPolicies" ], "lang": { "en-us": { "role": { "label": "Significant Accounting Policies [Text Block]", "verboseLabel": "Accounting policies", "documentation": "The entire disclosure for all significant accounting policies of the reporting entity." } } }, "auth_ref": [ "r169", "r269" ] }, "cwco_SparePartsStockMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "SparePartsStockMember", "presentation": [ "http://www.cwco.com/role/DisclosureInventoryDetails" ], "lang": { "en-us": { "role": { "label": "Spare parts stock [Member]" } } }, "auth_ref": [] }, "us-gaap_StateAndLocalJurisdictionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StateAndLocalJurisdictionMember", "presentation": [ "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "State and Local Jurisdiction [Member]", "documentation": "Designated tax department of a state or local government entitled to levy and collect income taxes from the entity." } } }, "auth_ref": [] }, "us-gaap_StatementBusinessSegmentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementBusinessSegmentsAxis", "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" ], "lang": { "en-us": { "role": { "label": "Segments [Axis]", "documentation": "Information by business segments." } } }, "auth_ref": [ "r229", "r317", "r320", "r321", "r322", "r323", "r324", "r325", "r326", "r327", "r328", "r329", "r330", "r331", "r333", "r334", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r343", "r349", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r391", "r393", "r394", "r699", "r700", "r701", "r702", "r703", "r704", "r705", "r706", "r707", "r708", "r709", "r919", "r1035", "r1105" ] }, "us-gaap_StatementClassOfStockAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementClassOfStockAxis", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails", "http://www.cwco.com/role/DisclosureInventoryDetails", "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails", "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails", "http://www.cwco.com/role/StatementConsolidatedBalanceSheets", "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlowsParenthetical", "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Class of Stock [Axis]", "documentation": "Information by the different classes of stock of the entity." } } }, "auth_ref": [ "r225", "r244", "r245", "r246", "r270", "r297", "r301", "r306", "r308", "r314", "r315", "r360", "r401", "r403", "r404", "r405", "r408", "r409", "r411", "r412", "r413", "r414", "r415", "r611", "r725", "r726", "r727", "r728", "r736", "r737", "r738", "r739", "r740", "r741", "r742", "r743", "r744", "r745", "r746", "r748", "r762", "r785", "r809", "r884", "r885", "r886", "r887", "r888", "r1031", "r1046", "r1053" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r21", "r39", "r226", "r255", "r256", "r257", "r274", "r275", "r276", "r280", "r288", "r290", "r313", "r361", "r364", "r416", "r551", "r552", "r553", "r571", "r572", "r594", "r595", "r596", "r597", "r598", "r600", "r602", "r620", "r621", "r622", "r623", "r624", "r625", "r641", "r711", "r712", "r713", "r736", "r809" ] }, "srt_StatementGeographicalAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementGeographicalAxis", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails", "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" ], "lang": { "en-us": { "role": { "label": "Geographical [Axis]" } } }, "auth_ref": [ "r347", "r348", "r749", "r750", "r751", "r824", "r840", "r861", "r880", "r890", "r894", "r895", "r896", "r897", "r898", "r899", "r900", "r901", "r902", "r908", "r921", "r941", "r1076", "r1105" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementLineItems", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails", "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/StatementConsolidatedStatementsOfCashFlowsParenthetical", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical", "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement [Line Items]", "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." } } }, "auth_ref": [ "r274", "r275", "r276", "r313", "r655", "r720", "r748", "r754", "r755", "r756", "r757", "r758", "r759", "r762", "r765", "r766", "r767", "r768", "r769", "r772", "r773", "r774", "r775", "r777", "r778", "r779", "r780", "r781", "r783", "r786", "r787", "r794", "r795", "r796", "r797", "r798", "r799", "r800", "r801", "r802", "r803", "r804", "r805", "r809", "r942" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF CASH FLOWS" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED BALANCE SHEETS" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY" } } }, "auth_ref": [] }, "srt_StatementScenarioAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementScenarioAxis", "presentation": [ "http://www.cwco.com/role/DisclosureContractsInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Scenario [Axis]" } } }, "auth_ref": [ "r291", "r513", "r1032", "r1033", "r1052" ] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementTable", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails", "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/StatementConsolidatedStatementsOfCashFlowsParenthetical", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical", "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement [Table]", "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." } } }, "auth_ref": [ "r274", "r275", "r276", "r313", "r655", "r720", "r748", "r754", "r755", "r756", "r757", "r758", "r759", "r762", "r765", "r766", "r767", "r768", "r769", "r772", "r773", "r774", "r775", "r777", "r778", "r779", "r780", "r781", "r783", "r786", "r787", "r794", "r795", "r796", "r797", "r798", "r799", "r800", "r801", "r802", "r803", "r804", "r805", "r809", "r942" ] }, "ecd_StkPrcOrTsrEstimationMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "StkPrcOrTsrEstimationMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Stock Price or TSR Estimation Method [Text Block]", "terseLabel": "Stock Price or TSR Estimation Method" } } }, "auth_ref": [ "r961", "r973", "r983", "r1009" ] }, "us-gaap_StockAppreciationRightsSARSMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockAppreciationRightsSARSMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Stock Appreciation Rights (SARs) [Member]", "terseLabel": "Stock Appreciation Rights (SARs)", "documentation": "Right to receive cash or shares equal to appreciation of predetermined number of grantor's shares during predetermined time period." } } }, "auth_ref": [] }, "us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockGrantedDuringPeriodValueSharebasedCompensation", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Shares Granted, Value, Share-based Payment Arrangement, after Forfeiture", "terseLabel": "Number of vested shares issued", "documentation": "Value, after forfeiture, of shares granted under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)." } } }, "auth_ref": [ "r82", "r89" ] }, "us-gaap_StockIssued1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssued1", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Issuance of 68,864 and 72,597, respectively, shares of common stock for services rendered", "documentation": "The fair value of stock issued in noncash financing activities." } } }, "auth_ref": [ "r50", "r51", "r52" ] }, "us-gaap_StockIssuedDuringPeriodSharesAcquisitions": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesAcquisitions", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Shares, Acquisitions", "terseLabel": "Shares of the Company's common stock", "verboseLabel": "Purchase of remaining non-controlling interests in PERC (in shares)", "documentation": "Number of shares of stock issued during the period pursuant to acquisitions." } } }, "auth_ref": [ "r142", "r143", "r182" ] }, "us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationAdditionalInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Shares, Conversion of Convertible Securities", "negatedLabel": "Stock Issued During Period, Shares, Conversion of Convertible Securities", "terseLabel": "Conversion of preferred stock (in shares)", "documentation": "Number of shares issued during the period as a result of the conversion of convertible securities." } } }, "auth_ref": [ "r21", "r38", "r77", "r182", "r410" ] }, "us-gaap_StockIssuedDuringPeriodSharesIssuedForServices": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesIssuedForServices", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails", "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationAdditionalInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlowsParenthetical" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Shares, Issued for Services", "terseLabel": "Issuance of 44,873 and 41,830, respectively, shares of common stock for services rendered", "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." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesNewIssues": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesNewIssues", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Shares, New Issues", "verboseLabel": "Issuance of share capital (in shares)", "documentation": "Number of new stock issued during the period." } } }, "auth_ref": [ "r21", "r142", "r143", "r182", "r725", "r809", "r885" ] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period", "negatedLabel": "Exercised - Options", "verboseLabel": "Exercise of options (in shares)", "documentation": "Number of share options (or share units) exercised during the current period." } } }, "auth_ref": [ "r21", "r142", "r143", "r182", "r528" ] }, "us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueConversionOfConvertibleSecurities", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Value, Conversion of Convertible Securities", "terseLabel": "Conversion of preferred stock", "documentation": "The gross value of stock issued during the period upon the conversion of convertible securities." } } }, "auth_ref": [ "r21", "r39", "r182" ] }, "us-gaap_StockIssuedDuringPeriodValueNewIssues": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueNewIssues", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Value, New Issues", "verboseLabel": "Issuance of share capital", "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." } } }, "auth_ref": [ "r21", "r142", "r143", "r182", "r736", "r809", "r885", "r949" ] }, "us-gaap_StockIssuedDuringPeriodValuePurchaseOfAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValuePurchaseOfAssets", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Value, Purchase of Assets", "terseLabel": "Issuance of 368,383 and 0, respectively, shares of common stock for the purchase of non-controlling interests in PERC", "documentation": "Value of shares of stock issued during the period as part of a transaction to acquire assets that do not qualify as a business combination." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "crdr": "credit", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Value, Stock Options Exercised", "verboseLabel": "Exercise of options", "documentation": "Value of stock issued as a result of the exercise of stock options." } } }, "auth_ref": [ "r21", "r39", "r182" ] }, "us-gaap_StockRedeemedOrCalledDuringPeriodShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRedeemedOrCalledDuringPeriodShares", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Redeemed or Called During Period, Shares", "negatedLabel": "Buyback of preferred stock (in shares)", "documentation": "Number of stock bought back by the entity at the exercise price or redemption price." } } }, "auth_ref": [ "r21" ] }, "us-gaap_StockRedeemedOrCalledDuringPeriodValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRedeemedOrCalledDuringPeriodValue", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Redeemed or Called During Period, Value", "negatedLabel": "Buyback of preferred stock", "documentation": "Equity impact of the value of stock bought back by the entity at the exercise price or redemption price." } } }, "auth_ref": [ "r21" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent", "totalLabel": "Total Consolidated Water Co. Ltd. stockholders' equity", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r143", "r146", "r147", "r170", "r764", "r782", "r810", "r811", "r937", "r950", "r1047", "r1059", "r1086", "r1110" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent [Abstract]", "verboseLabel": "Consolidated Water Co. Ltd. stockholders' equity" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets", "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest", "periodEndLabel": "Balance", "periodStartLabel": "Balance", "totalLabel": "Total equity", "documentation": "Amount of equity (deficit) attributable to parent and noncontrolling interest. Excludes temporary equity." } } }, "auth_ref": [ "r99", "r100", "r103", "r226", "r227", "r256", "r274", "r275", "r276", "r280", "r288", "r361", "r364", "r416", "r551", "r552", "r553", "r571", "r572", "r594", "r595", "r596", "r597", "r598", "r600", "r602", "r620", "r621", "r625", "r641", "r712", "r713", "r734", "r764", "r782", "r810", "r811", "r889", "r949", "r1047", "r1059", "r1086", "r1110" ] }, "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Equity" } } }, "auth_ref": [] }, "cwco_StockholdersEquityNoteConversionRatioCommonShares": { "xbrltype": "sharesItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "StockholdersEquityNoteConversionRatioCommonShares", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "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" } } }, "auth_ref": [] }, "cwco_StockholdersEquityNoteConversionRatioPreferredShares": { "xbrltype": "sharesItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "StockholdersEquityNoteConversionRatioPreferredShares", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" ], "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" } } }, "auth_ref": [] }, "cwco_SubcontractorAndOtherProjectCostsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "SubcontractorAndOtherProjectCostsMember", "presentation": [ "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails" ], "lang": { "en-us": { "role": { "documentation": "NA", "label": "Subcontractor and other project costs" } } }, "auth_ref": [] }, "us-gaap_SubsequentEventsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventsAbstract", "lang": { "en-us": { "role": { "label": "Subsequent events" } } }, "auth_ref": [] }, "us-gaap_SubsequentEventsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventsTextBlock", "presentation": [ "http://www.cwco.com/role/DisclosureSubsequentEvents" ], "lang": { "en-us": { "role": { "label": "Subsequent Events [Text Block]", "verboseLabel": "Subsequent events", "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." } } }, "auth_ref": [ "r650", "r651" ] }, "us-gaap_SupplementalCashFlowElementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplementalCashFlowElementsAbstract", "lang": { "en-us": { "role": { "label": "Supplemental disclosure of cash flow information" } } }, "auth_ref": [] }, "cwco_SupplementalDisclosureOfCashFlowInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "SupplementalDisclosureOfCashFlowInformationLineItems", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "label": "Supplemental Disclosure Of Cash Flow Information [Line Items]" } } }, "auth_ref": [] }, "cwco_SupplementalDisclosureOfCashFlowInformationTable": { "xbrltype": "stringItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "SupplementalDisclosureOfCashFlowInformationTable", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationAdditionalInformationDetails", "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "label": "Supplemental Disclosure Of Cash Flow Information [Table]" } } }, "auth_ref": [] }, "ecd_TabularListTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TabularListTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Tabular List [Table Text Block]", "terseLabel": "Tabular List, Table" } } }, "auth_ref": [ "r1002" ] }, "cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies": { "xbrltype": "durationItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "TermOfForeignExchangeRiskToDollarForCertainCurrencies", "presentation": [ "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails" ], "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" } } }, "auth_ref": [] }, "us-gaap_TimingOfTransferOfGoodOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TimingOfTransferOfGoodOrServiceAxis", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "label": "Timing of Transfer of Good or Service [Axis]", "documentation": "Information by timing of transfer of good or service to customer." } } }, "auth_ref": [ "r923", "r1076" ] }, "us-gaap_TimingOfTransferOfGoodOrServiceDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TimingOfTransferOfGoodOrServiceDomain", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "label": "Timing of Transfer of Good or Service [Domain]", "documentation": "Timing of transfer of good or service to customer. Includes, but is not limited to, at point in time or over time." } } }, "auth_ref": [ "r923", "r1076" ] }, "srt_TitleOfIndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "TitleOfIndividualAxis", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" ], "lang": { "en-us": { "role": { "label": "Title of Individual [Axis]" } } }, "auth_ref": [ "r1056", "r1090" ] }, "srt_TitleOfIndividualWithRelationshipToEntityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "TitleOfIndividualWithRelationshipToEntityDomain", "presentation": [ "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" ], "lang": { "en-us": { "role": { "label": "Relationship to Entity [Domain]" } } }, "auth_ref": [] }, "cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany": { "xbrltype": "percentItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "TotalPercentageOfOwnershipInterestInAcquiredCompany", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "documentation": "Total percentage of ownership interest in an acquired company.", "label": "Total Percentage Of Ownership Interest In An Acquired Company" } } }, "auth_ref": [] }, "ecd_TotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Amount", "terseLabel": "Total Shareholder Return Amount" } } }, "auth_ref": [ "r994" ] }, "ecd_TotalShareholderRtnVsPeerGroupTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TotalShareholderRtnVsPeerGroupTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Vs Peer Group [Text Block]", "terseLabel": "Total Shareholder Return Vs Peer Group" } } }, "auth_ref": [ "r1001" ] }, "us-gaap_TradeAndOtherAccountsReceivablePolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TradeAndOtherAccountsReceivablePolicy", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Trade and Other Accounts Receivable, Policy [Policy Text Block]", "terseLabel": "Accounts receivable", "documentation": "Disclosure of accounting policy for accounts receivable." } } }, "auth_ref": [ "r204", "r205", "r206", "r352", "r353", "r355" ] }, "us-gaap_TradeNamesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TradeNamesMember", "presentation": [ "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails", "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Trade name", "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof." } } }, "auth_ref": [ "r96" ] }, "ecd_TradingArrAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TradingArrAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement [Axis]", "terseLabel": "Trading Arrangement:" } } }, "auth_ref": [ "r1022" ] }, "ecd_TradingArrByIndTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TradingArrByIndTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangements, by Individual [Table]", "terseLabel": "Trading Arrangements, by Individual" } } }, "auth_ref": [ "r1024" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "TradingSymbol", "presentation": [ "http://www.cwco.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "us-gaap_TransferredAtPointInTimeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TransferredAtPointInTimeMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "label": "Transferred at Point in Time [Member]", "documentation": "Contract with customer in which good or service is transferred at point in time." } } }, "auth_ref": [ "r923" ] }, "us-gaap_TransferredOverTimeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TransferredOverTimeMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" ], "lang": { "en-us": { "role": { "label": "Transferred over Time [Member]", "documentation": "Contract with customer in which good or service is transferred over time." } } }, "auth_ref": [ "r923" ] }, "cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "TransfersBetweenInventoryAndPropertyPlantAndEquipment", "crdr": "debit", "presentation": [ "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails" ], "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" } } }, "auth_ref": [] }, "ecd_TrdArrAdoptionDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrAdoptionDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Adoption Date", "terseLabel": "Adoption Date" } } }, "auth_ref": [ "r1025" ] }, "ecd_TrdArrDuration": { "xbrltype": "durationItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrDuration", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Duration", "terseLabel": "Arrangement Duration" } } }, "auth_ref": [ "r1026" ] }, "ecd_TrdArrIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r1024" ] }, "ecd_TrdArrIndTitle": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrIndTitle", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Title", "terseLabel": "Title" } } }, "auth_ref": [ "r1024" ] }, "ecd_TrdArrSecuritiesAggAvailAmt": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrSecuritiesAggAvailAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Securities Aggregate Available Amount", "terseLabel": "Aggregate Available" } } }, "auth_ref": [ "r1027" ] }, "ecd_TrdArrTerminationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrTerminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Termination Date", "terseLabel": "Termination Date" } } }, "auth_ref": [ "r1025" ] }, "cwco_TypeOfPhasesAxis": { "xbrltype": "stringItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "TypeOfPhasesAxis", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "Type Of Phases [Axis]" } } }, "auth_ref": [] }, "cwco_TypeOfPhasesDomain": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "TypeOfPhasesDomain", "presentation": [ "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" ], "lang": { "en-us": { "role": { "label": "Type Of Phases [Domain]" } } }, "auth_ref": [] }, "country_US": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "US", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails", "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" ], "lang": { "en-us": { "role": { "label": "United States [Member]" } } }, "auth_ref": [] }, "currency_USD": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/currency/2023", "localname": "USD", "presentation": [ "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "United States dollar [Member]" } } }, "auth_ref": [] }, "ecd_UndrlygSecurityMktPriceChngPct": { "xbrltype": "pureItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "UndrlygSecurityMktPriceChngPct", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Underlying Security Market Price Change, Percent", "terseLabel": "Underlying Security Market Price Change" } } }, "auth_ref": [ "r1021" ] }, "us-gaap_UseOfEstimates": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UseOfEstimates", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Use of Estimates, Policy [Policy Text Block]", "terseLabel": "Use of estimates", "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles." } } }, "auth_ref": [ "r56", "r57", "r58", "r211", "r212", "r214", "r215" ] }, "country_VG": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "VG", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" ], "lang": { "en-us": { "role": { "label": "Management Services Agreement With OC-BVI [Membre]" } } }, "auth_ref": [] }, "us-gaap_VehiclesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VehiclesMember", "presentation": [ "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails", "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" ], "lang": { "en-us": { "role": { "label": "Vehicles [Member]", "documentation": "Equipment used primarily for road transportation." } } }, "auth_ref": [] }, "cwco_WSCMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "WSCMember", "presentation": [ "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" ], "lang": { "en-us": { "role": { "label": "WSC [Member]" } } }, "auth_ref": [] }, "cwco_WaterAndSewerageCorporationMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "WaterAndSewerageCorporationMember", "presentation": [ "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" ], "lang": { "en-us": { "role": { "label": "Water and Sewerage Corporation [Member]" } } }, "auth_ref": [] }, "cwco_WaterStockMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cwco.com/20231231", "localname": "WaterStockMember", "presentation": [ "http://www.cwco.com/role/DisclosureInventoryDetails" ], "lang": { "en-us": { "role": { "label": "Water stock [Member]" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "calculation": { "http://www.cwco.com/role/DisclosureEarningsPerShareDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cwco.com/role/DisclosureEarningsPerShareDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "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", "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." } } }, "auth_ref": [ "r296", "r308" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "presentation": [ "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "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:" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "calculation": { "http://www.cwco.com/role/DisclosureEarningsPerShareDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cwco.com/role/DisclosureEarningsPerShareDetails", "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" ], "lang": { "en-us": { "role": { "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", "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." } } }, "auth_ref": [ "r294", "r308" ] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "05", "Paragraph": "4", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482338/360-10-05-4" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "SubTopic": "20", "Topic": "940", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "30", "Paragraph": "7", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479637/805-30-30-7" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "30", "Paragraph": "8", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479637/805-30-30-8" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10", "SubTopic": "20", "Topic": "205", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-10" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-11" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1D", "SubTopic": "20", "Topic": "205", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-1D" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "SubTopic": "405", "Topic": "942", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481071/942-405-45-2" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "21D", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-21D" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r12": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r13": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-1" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "20", "Topic": "205", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "20", "Topic": "715", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r17": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "30", "Topic": "350", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "405", "Topic": "942", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481047/942-405-50-1" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r20": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "505", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2A" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b),(d)", "SubTopic": "30", "Topic": "350", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-3" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "b", "SubTopic": "10", "Topic": "280", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4D", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "815", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4D" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(27)", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "205", "SubTopic": "20", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-3" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19-26)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.21)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.24)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.25)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29-30)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29-31)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.3,4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.31)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r42": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "12", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-1" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-3" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-4" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-5" }, "r53": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "270", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482989/270-10-45-14" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r55": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-20" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-4" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-8" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-9" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "30", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "41", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "310", "SubTopic": "10", "Section": "50", "Paragraph": "11B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-11B" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "310", "SubTopic": "10", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-9" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-1" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-2" }, "r68": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "((a)(1),(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r71": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r74": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r75": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "480", "SubTopic": "10", "Section": "55", "Paragraph": "63", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481620/480-10-55-63" }, "r76": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "480", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480244/480-10-S99-1" }, "r77": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-3" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "715", "SubTopic": "20", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-2" }, "r79": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "715", "SubTopic": "20", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-3" }, "r80": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "715", "SubTopic": "20", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-4" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "715", "SubTopic": "20", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-17" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "30", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480513/718-10-30-3" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12" }, "r88": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-13" }, "r89": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "30", "Section": "35", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480843/718-30-35-1" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-3" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-8" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r93": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r94": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-3" }, "r95": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-1" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "14", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "14", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-20" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-15" }, "r100": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "45", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-16" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "45", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-18" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "55", "Paragraph": "4I", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4I" }, "r104": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4A" }, "r105": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4B" }, "r106": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "40", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-4" }, "r107": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "40", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-5" }, "r108": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-20" }, "r109": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21" }, "r110": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "830", "SubTopic": "30", "Section": "45", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r111": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483013/835-20-50-1" }, "r112": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3" }, "r113": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "850", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r114": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "850", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-3" }, "r115": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.17)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r116": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//205-20/tableOfContent" }, "r117": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-11" }, "r118": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-1A" }, "r119": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-1B" }, "r120": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1C", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-1C" }, "r121": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-3" }, "r122": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-3A" }, "r123": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-3B" }, "r124": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-4" }, "r125": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1" }, "r126": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-3A" }, "r127": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-4A" }, "r128": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-4B" }, "r129": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5A" }, "r130": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B" }, "r131": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B" }, "r132": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B" }, "r133": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B" }, "r134": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5C", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5C" }, "r135": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5C", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5C" }, "r136": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5D", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5D" }, "r137": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7" }, "r138": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r139": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r140": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(26)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r141": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(26)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r142": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r143": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r144": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r145": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r146": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r147": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(31))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r148": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(32))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r149": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-03(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-1" }, "r150": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r151": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r152": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r153": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r154": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r155": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r156": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.1,2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r157": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.13)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r158": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r159": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r160": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r161": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r162": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.9)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r163": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//230/tableOfContent" }, "r164": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12" }, "r165": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r166": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r167": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r168": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r169": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "235", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//235/tableOfContent" }, "r170": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 4.E)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2" }, "r171": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r172": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r173": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r174": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r175": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//360/tableOfContent" }, "r176": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-9" }, "r177": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r178": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r179": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3A" }, "r180": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.CC)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480091/360-10-S99-2" }, "r181": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//440/tableOfContent" }, "r182": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r183": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Subparagraph": "(e)(1)", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r184": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Subparagraph": "(f)(2)", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r185": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "12", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r186": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r187": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "9", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r188": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r189": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19" }, "r190": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-3" }, "r191": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r192": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r193": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(15)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r194": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(15)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r195": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r196": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r197": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r198": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(13)(f))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r199": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r200": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r201": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r202": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04.13(h))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r203": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04.9)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r204": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11B", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-11B" }, "r205": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-15" }, "r206": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "SubTopic": "10", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-6" }, "r207": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2" }, "r208": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "SubTopic": "210", "Topic": "946", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-20" }, "r209": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "270", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482989/270-10-45-6" }, "r210": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r211": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r212": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r213": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-1" }, "r214": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-11" }, "r215": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-12" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-6" }, "r217": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-7" }, "r218": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r219": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(1)", "SubTopic": "20", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(2)", "SubTopic": "20", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2" }, "r221": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h))", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r222": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org//250/tableOfContent" }, "r223": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//275/tableOfContent" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//606/tableOfContent" }, "r225": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(a)", "Publisher": "SEC" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5C", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5C" }, "r231": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7" }, "r232": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r233": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r239": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r240": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r242": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(27)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r247": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(3)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r249": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r250": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r252": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A" }, "r253": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-1" }, "r255": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4" }, "r256": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6" }, "r258": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(210.5-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r259": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r261": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SAB Topic 6.B)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-5" }, "r263": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-17" }, "r264": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-2" }, "r265": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r267": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-1" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r271": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r276": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r277": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r280": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r281": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r282": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r283": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r284": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r285": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SAB Topic 11.M.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-5" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-6" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//260/tableOfContent" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-11" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-22" }, "r299": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-23" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "26", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-26" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-3" }, "r302": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "40", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-40" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "42", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-42" }, "r304": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r305": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7" }, "r308": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2" }, "r311": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3" }, "r312": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1" }, "r314": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482987/272-10-50-1" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482987/272-10-50-3" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//280/tableOfContent" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15" }, "r318": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21" }, "r319": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21" }, "r320": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r321": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r322": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r323": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r324": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r327": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r328": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r329": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(j)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r330": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r331": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r332": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-26" }, "r333": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r335": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r336": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r337": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r338": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r339": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r340": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r341": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r342": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r344": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "34", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-34" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40" }, "r346": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r347": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r348": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r349": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "42", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42" }, "r350": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2" }, "r351": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9" }, "r352": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-1" }, "r353": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-2" }, "r354": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-4" }, "r355": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481569/310-20-50-1" }, "r356": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481664/323-10-45-1" }, "r357": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r358": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r359": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r360": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r361": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r362": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r363": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r364": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5" }, "r365": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-1" }, "r366": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r367": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r368": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//330/tableOfContent" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-1" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-4" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-1" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//350-30/tableOfContent" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r386": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r387": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r388": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r391": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r392": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r394": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4" }, "r396": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r402": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r403": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r408": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r414": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-2" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-3" }, "r420": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10" }, "r421": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r423": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r424": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r425": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r427": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-15" }, "r428": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-17" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-19" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r434": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8" }, "r439": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8" }, "r440": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-9" }, "r441": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//715/tableOfContent" }, "r442": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480535/715-20-45-2" }, "r443": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r444": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r445": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(10)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r446": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r447": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r448": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r449": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r450": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r451": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r452": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(8)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r453": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(9)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r454": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r457": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r458": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r459": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r461": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(8)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r465": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r466": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r467": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r468": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r469": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(A)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(B)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(C)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r473": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r483": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(j)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r486": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(k)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r487": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(k)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r488": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(k)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r489": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r490": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(n)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(o)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r492": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(p)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r493": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(q)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r494": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(r)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r495": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(r)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r496": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-2" }, "r497": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r498": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r499": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r500": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r501": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r502": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r503": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r504": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r505": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r506": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-8" }, "r507": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480126/715-20-S99-2" }, "r508": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480266/715-60-50-3" }, "r509": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "70", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480794/715-70-50-1" }, "r510": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480606/715-80-35-1" }, "r511": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r512": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5" }, "r513": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5" }, "r514": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-9" }, "r515": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//718/tableOfContent" }, "r516": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1D", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-1D" }, "r517": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-2" }, "r518": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-3" }, "r519": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r520": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r521": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r522": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r523": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r524": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r525": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r526": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r527": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r528": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r529": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r530": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r531": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r532": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r533": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r534": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r535": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r536": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r537": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r541": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r546": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r547": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r549": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r550": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r551": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r552": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r553": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r554": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.F)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r555": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//740/tableOfContent" }, "r556": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-25" }, "r557": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-28" }, "r558": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4" }, "r559": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6" }, "r560": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10" }, "r561": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r562": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14" }, "r563": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17" }, "r564": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-19" }, "r565": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r566": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r567": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-20" }, "r568": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21" }, "r569": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r570": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r571": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r572": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r573": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r574": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r575": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r576": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r577": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r578": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r579": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r580": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r581": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r582": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 11.C)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2" }, "r583": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482551/740-270-45-3" }, "r584": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1" }, "r585": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2" }, "r586": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5" }, "r587": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19" }, "r588": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r589": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r590": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r591": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r592": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r593": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r594": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r595": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r596": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r597": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r598": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r599": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r600": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r601": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r602": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r603": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r604": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r605": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r606": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r607": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r608": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r609": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r610": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-3" }, "r611": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r612": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r613": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r614": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r615": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//830/tableOfContent" }, "r616": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481839/830-10-45-17" }, "r617": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482014/830-20-35-1" }, "r618": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481956/830-20-45-1" }, "r619": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481926/830-20-50-1" }, "r620": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17" }, "r621": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r622": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r623": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r624": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r625": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1" }, "r626": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483013/835-20-50-1" }, "r627": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r628": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r629": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//842-20/tableOfContent" }, "r630": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r631": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r632": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-5" }, "r633": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r634": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r635": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r636": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r637": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r638": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r639": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r640": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6" }, "r641": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r642": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r643": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//850/tableOfContent" }, "r644": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r645": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r646": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r647": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r648": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-6" }, "r649": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481435/852-10-45-14" }, "r650": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//855/tableOfContent" }, "r651": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2" }, "r652": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r653": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "910", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6" }, "r654": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "330", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482105/912-330-50-1" }, "r655": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "924", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 11.L)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1" }, "r656": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483154/926-20-50-5" }, "r657": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r658": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r659": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r660": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "928", "SubTopic": "340", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483147/928-340-50-1" }, "r661": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-15" }, "r662": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-15" }, "r663": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-20" }, "r664": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-20" }, "r665": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-28" }, "r666": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-28" }, "r667": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "33", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-33" }, "r668": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "33", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-33" }, "r669": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "35A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-35A" }, "r670": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "35A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-35A" }, "r671": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-8" }, "r672": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-8" }, "r673": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(10)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r674": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(27))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r675": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-05(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1" }, "r676": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1" }, "r677": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r678": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r679": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r680": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r681": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r682": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r683": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r684": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r685": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r686": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r687": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r688": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r689": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r690": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r691": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r692": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r693": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r694": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r695": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r696": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r697": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r698": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r699": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r700": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r701": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r702": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r703": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r704": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r705": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r706": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r707": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r708": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column J))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r709": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column K))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r710": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A" }, "r711": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r712": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r713": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r714": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r715": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r716": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r717": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r718": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r719": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "825", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B" }, "r720": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r721": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(f)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r722": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(f)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r723": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(f)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r724": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(h)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r725": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r726": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r727": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r728": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r729": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11" }, "r730": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13" }, "r731": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-2" }, "r732": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-5" }, "r733": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-6" }, "r734": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-3" }, "r735": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-3" }, "r736": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r737": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-2" }, "r738": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "27", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-27" }, "r739": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r740": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r741": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r742": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r743": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r744": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r745": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r746": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r747": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-21" }, "r748": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4" }, "r749": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r750": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2" }, "r751": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r752": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r753": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r754": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r755": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r756": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r757": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r758": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r759": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r760": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r761": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r762": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r763": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r764": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r765": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r766": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r767": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r768": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r769": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r770": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r771": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(5)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r772": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r773": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r774": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r775": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r776": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r777": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r778": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r779": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r780": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r781": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r782": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r783": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r784": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7" }, "r785": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483580/946-220-50-3" }, "r786": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r787": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r788": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(c)(2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r789": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(c)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r790": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r791": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r792": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r793": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r794": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r795": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r796": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r797": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r798": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r799": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r800": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r801": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r802": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r803": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r804": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r805": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r806": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r807": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r808": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r809": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r810": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r811": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r812": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r813": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r814": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1" }, "r815": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r816": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r817": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r818": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r819": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r820": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r821": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column B)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r822": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r823": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r824": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r825": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r826": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r827": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r828": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r829": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r830": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r831": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r832": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r833": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r834": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r835": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "12", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-12" }, "r836": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "19", "Subparagraph": "(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-19" }, "r837": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "19", "Subparagraph": "(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-19" }, "r838": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "19", "Subparagraph": "(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-19" }, "r839": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r840": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r841": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r842": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r843": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r844": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r845": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r846": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r847": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r848": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r849": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r850": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column B)(Footnote 10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r851": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r852": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r853": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r854": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r855": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r856": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r857": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r858": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r859": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r860": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r861": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r862": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r863": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r864": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r865": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r866": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r867": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r868": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r869": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r870": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r871": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r872": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r873": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r874": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r875": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r876": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r877": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r878": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column F)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r879": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column F)(Footnote 5)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r880": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r881": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column F)(Footnote 8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r882": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column F)(Footnote 9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r883": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r884": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-1" }, "r885": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r886": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r887": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r888": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r889": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-3" }, "r890": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "948", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1" }, "r891": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481058/954-310-45-1" }, "r892": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481027/954-310-50-2" }, "r893": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "440", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1" }, "r894": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r895": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r896": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r897": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r898": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r899": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r900": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r901": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r902": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r903": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r904": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "976", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1" }, "r905": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "978", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1" }, "r906": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r907": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r908": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(b)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r909": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r910": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r911": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r912": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r913": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r914": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r915": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "52", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52" }, "r916": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r917": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r918": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A" }, "r919": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24" }, "r920": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r921": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r922": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r923": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r924": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-17" }, "r925": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-18" }, "r926": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r927": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r928": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r929": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6" }, "r930": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6" }, "r931": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6" }, "r932": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8" }, "r933": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r934": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4J", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4J" }, "r935": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4K", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4K" }, "r936": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "53", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479589/842-20-55-53" }, "r937": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10" }, "r938": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "29F", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F" }, "r939": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r940": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r941": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1" }, "r942": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1" }, "r943": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r944": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r945": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r946": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r947": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "405", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480191/946-405-45-2" }, "r948": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10" }, "r949": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-11" }, "r950": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12" }, "r951": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r952": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r953": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r954": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-K", "Number": "249", "Section": "310" }, "r955": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Number": "249", "Section": "220", "Subsection": "f" }, "r956": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "16", "Subsection": "J", "Paragraph": "a" }, "r957": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1" }, "r958": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i" }, "r959": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r960": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r961": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r962": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r963": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r964": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii" }, "r965": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "iii" }, "r966": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "2" }, "r967": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii", "Section": "6" }, "r968": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Number": "249", "Section": "240", "Subsection": "f" }, "r969": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a" }, "r970": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1" }, "r971": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r972": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r973": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r974": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r975": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r976": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "2" }, "r977": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "3" }, "r978": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "b" }, "r979": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a" }, "r980": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1" }, "r981": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r982": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r983": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r984": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r985": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r986": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "2" }, "r987": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "3" }, "r988": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "b" }, "r989": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Section": "13", "Subsection": "a-1" }, "r990": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v" }, "r991": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "1" }, "r992": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "ii" }, "r993": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii" }, "r994": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iv" }, "r995": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "vi" }, "r996": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "3" }, "r997": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "4" }, "r998": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "i" }, "r999": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "ii" }, "r1000": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iii" }, "r1001": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iv" }, "r1002": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6" }, "r1003": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6", "Subparagraph": "i" }, "r1004": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w" }, "r1005": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1" }, "r1006": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i" }, "r1007": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r1008": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r1009": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r1010": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r1011": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r1012": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "ii" }, "r1013": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "iii" }, "r1014": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "2" }, "r1015": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "1" }, "r1016": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2" }, "r1017": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "A" }, "r1018": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "C" }, "r1019": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "D" }, "r1020": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "E" }, "r1021": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "F" }, "r1022": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r1023": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r1024": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "A" }, "r1025": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "B" }, "r1026": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "C" }, "r1027": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "D" }, "r1028": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "b", "Paragraph": "1" }, "r1029": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r1030": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Securities Act", "Number": "230", "Section": "405" }, "r1031": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-3" }, "r1032": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-10" }, "r1033": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-3" }, "r1034": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "2", "SubTopic": "10", "Topic": "470", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481174/470-10-25-2" }, "r1035": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4H", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H" }, "r1036": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r1037": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "205", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483504/205-10-50-1" }, "r1038": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r1039": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r1040": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r1041": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r1042": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r1043": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6" }, "r1044": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r1045": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r1046": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r1047": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r1048": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r1049": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r1050": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r1051": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r1052": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4" }, "r1053": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "55", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-55" }, "r1054": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r1055": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//310-10/tableOfContent" }, "r1056": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-13" }, "r1057": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481830/320-10-45-11" }, "r1058": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r1059": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r1060": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r1061": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r1062": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r1063": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482190/360-10-35-3" }, "r1064": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-5" }, "r1065": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "410", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10" }, "r1066": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450/tableOfContent" }, "r1067": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-1" }, "r1068": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4" }, "r1069": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r1070": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r1071": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r1072": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r1073": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r1074": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r1075": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r1076": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r1077": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r1078": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r1079": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r1080": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r1081": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-6" }, "r1082": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r1083": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r1084": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r1085": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r1086": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r1087": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479424/830-30-S99-1" }, "r1088": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r1089": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6" }, "r1090": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-2" }, "r1091": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-3" }, "r1092": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r1093": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r1094": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r1095": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r1096": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r1097": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r1098": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r1099": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r1100": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(15)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r1101": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r1102": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r1103": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r1104": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r1105": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B" }, "r1106": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r1107": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r1108": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r1109": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r1110": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r1111": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" } } } ZIP 122 0001558370-24-004095-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001558370-24-004095-xbrl.zip M4$L#!!0 ( )*&>UCINI=8GAT $=9 0 1 8W=C;RTR,#(S,3(S,2YX MMSXS:2_WY5]S_P_.5R5>MW)LE,)=F27Q/7VI9/"OO_[[O_W\'X>'_[B8W#E>Z,8K&D2.RRF)J.>\ ML&CI/(7K-0F<>\HY\WWG@C-O01WG].3HW=')T4_.X>&ODL4%$9 E#!S)Z^SH M-$NX3+F%P0?G_/CLQ^.SD[/OG1\_G+[[:LC?!5>!^$NZ0K MXH!X@?@0B\,%(>M?#I91M/YP?#PG8G84\L5QFH!3F2M,CT[.3D_/@?=RSXG+.,UKR!)Z24F :$N4)-*Y-* MQ&X8!Q'?J,G3Q'*5@<"+RO1IE=\=)XEYG7E4;R_X6&D"D++4"B_GDO#T_?OW MQS(U(ZU1EML+DV>@'KEH,>>@B4VRI:DUX9BF"!:(B 1N7@1]=9=J]IA28@UZ M$FW65"@U2*:DY!'A"QH]D!45:^+24FW<%S<\)Y4;0G@J3* 13H__<7\WE5TC(_8B7N%>:CE(/L9D M+.#L\.3\$*N=0@3RM F8MG00K\Y46G=V FT=T4"PF4\/D8QR$L%8) [/<"S* M6Y^'?D/KRY22^)S.&[7@AV-(+39L ^,\J:P&$6_D_/X84O->3!2L M0H(@C*2"XJ?LXWK-@GF8?(%O.)1]P"9Y@G[CX!^_3V[5'44VW!43KA^*F-,I MX.41[HT"[S(64;@:O3)Q%:X("U)U$ <. _&Z9#C!U$JX.LG42OD[&^.?C*KM*03%,]^/@5_DW:)2 H4XV'LZ-:>:4 M1)/1);X;^]WS;:O5F"W]F&'5&T%HL$@.Y)]]T26D&FP&= M!BOHW1*KG O\?3E^F([O;J]&3]=7SL7H;O1P>>U,?[N^?IH.Z.C0R3^*\?P6 M+-X5U4"D(-;B=*;':?H$_]Q?/SQ-G?&-<_MP.;Z_'M"JC89-"%P2L;SQPQ=Q M"=*<50=$PUQ:_+ZOCXD: "]'T]^-PG3(; M8-+ !"V^ICS:/(+I%X&5??UGS-8X4*$9#R-?Q&,7J]2*8G]&6I!_K(.!8E.-MRQJPUV!_"Q(&"]SZ&@D! MB[_+4$0".B[,?/$*I:#>:!7RB/U+"M0 ?D\N6O3?U_O_MAB'R'+DP ]%R;Y/ MMH4YI%#:@'\'_(LPX4*SG&H(OQF3%O1K?5^%?K$D)YS#D%^E&07[%(-2!ODT,%Z>E*'-6$I>W+&%9'T\3/,YV(8O]LAO(FC[.]' MLI'+5"V &OH6^+YOA"_AF>*V3KD.V&G'7MS&>R*OY1Z5?+Z@\[!$TCCV]F&B M1?E4-?,B"R="'K6NRI+$F2PL^Y60#O ;P0\&\C-#_X>;D'>"O"5C"\R**;8$ M<\[= 60'8'L .Z&P7'&9SU);Z(9ZL&;Q(6T"=NI3>#V?PVJ%/5/\V0YW+W8M M2G#>H@3E,K&_SY-2D<*!!1B0ADZTI [-2D^^#BK2K"+7A .!N"F8;3E;CLJUB*J.R@=<^^(ZC4+W\S+TP800>%(0;0QA5634HGK> MY?AU^C2^_-MOX[NKZ\GT/YWK__[]]NE_!DP['Z#WZ:X-F5N.UCOTV*)OQ-!K MS8[:P5A\!+!<1L7(\V0EB%^P1_2'[Z:YM3O "C-VR]Y9I_SQ:UY$T6(:#-Q. M*&,OQ/-:^ <'UV?B:S81NV9OP;FV#:'&&9DGA[SX!]T6,T#=">K&\WICM%LY MM !>VW)0 ZX_[A] [P+ZQS#T7ICO UJ&AWJ]>+0 7SL]4 .?%201'X[T=D/^ M-GBF(I+&%@ W!N.'=\2]E4,+ZN_,4"\4(X&7!0V8]\$>3#.A^QEA%W=F$SY:F+]OM+GKKLZ0E!4GCP&]M$#TMTIR#'J@.PN$P2T* M^:;Q<*^2KL7MG>ID/F4PP+!79^EL;^E,K_'R&C96NCK;R_ZF3>^#=,3)C/M2D<6PWS*7UYSFI M#^&YTZW\(X,/9WI_RWR T\Q'#Q94=V&P>*(RX GEG'KP/4.IV7#ORJ#%#Z^V M-UKQPX-2'!^*.8R@'!AKDX*D$UX&^K &,(2\BW%OFJT%WMHF: 7>P0[O'JJ& M+M#6:(>PF5 +FN)">,K)80-$/2%*-Y0%NJ12[V)S3_X(^4<*ZU&R7C)W0A= M!+.D_)X$_J'<&->=N+"MY+]U90'Q$E.UK7KVL:R&NM MQ0R-,4OVPE6K%8IM?N2"=V]X-KO@:+!(BDYNOY<*=VA:NBKKH#1[5)JV]'VI MD6DY+8I5,V)V4*R/!E2#KNE";8;N9QF/&N_30GO)>LNOX[6<5_ V7?,61.?\ M6MWX06'@(JO#F8R8[1:*R)*<4!;CD+2< >W.:'^B;+'$\"C/T)46](8P_G?B MQW0\3R 4H^B*1/#S(T_,T-L@XBP0S"V37;]2[C)@WDE7OECI+9I6MX";-2VK MHT.22CISJ*7SC.7CN)6H( Q;D;R#BM<+\/."9R8S?F59M>OY:%;U07D[*V\G M73-4C;H]W*0: U[->$UHQ+B\&W,!D_2<-1XF-1-J<5($9]MR#3CJ8RJMPCX='F"0P+0:0G5?.8JB?7 7>F..U-^3EK M9.A$!8X#:CJ;)5ZOD[=-B+_]NKUP:K#3UYV#%EM%8*5B$8ZW30$+5?I;SZ&8 MX;1I_XAWVO#=$]L6W:@OO[OJQC W]W(-9C #KHF?[9;4O7NK!!H@H8NKXA:G M'/*=D@$'@UM,[5>5]$B8W2 ?H#"\;61VS4@/29?[10,P9K>*C*X,Z6'I\/3! M@$KS'9_&RSWZUM?=ZAF:V^1]"8.')?00F+XH,<"QAZM5NU^?TH.YUY4%#,OL_,HX&GF'"S!&V[*Y;@><"?IG#()>/ZO,C%JZ%AC%'L26@4.? M!_/"-)9[:.HJ8^(R4VH(>_/1(OQC'>$= DP/:M#1 MC4H-M996"V>'@+X#5L:^54TSG))*BX]98-X!&;W#E1J/4IH.A=.3.@IIC-VA MZ4V\L)KZ0Y5 "T+;6_0#%,:N66H\&JBTH"CV&U2OR0_0M/IK-:-5H% M[2%P2F\;M?'QJ4JZ%BC=#8,!ANX!8=DB8'/FDB"JQ.L<"1&ODCB6W4+$=N&H MA;J#*S4F;_ M'*#.')Z=G,&*_/STGR#JT>O*STB0?4G#7F?_R4?@B",-%V^0T_@70ACYR K*A8$W=; MJ*RUH.[1(GP^IJYWC/(>.,)=TA6Y"UW))J$63>3XAVRG(R@JK5R'4CW*NI2: MD>,?W4JMHX0^_?B\L[IH91;\=9CE.\1/AZ=GA^>GW61/V;V3O[S(N/PL Q;\ MKK?@[Q/U#))GZ,T*]SDOY<(:O$?13W_8O1Z"H0[1S^5[$C['OHS*='0*, MYZ?-&MB64_X6QA69$S&3K&)QB ()DPY0S+0@9)WV/3\2.9MN_4')<*=*X)>> M=1 \ZE1^1I^4#;]V&(&DPQ/?=!F%BEFR'[O4(.: M]9X"(*^R=)JL3V7Q8**';IRZ:EP'$8LVQ2"2,R$=:@Z<9%;&LM@'@2'L%[<1 M7:$A>>"0E.J7@XC'.&=+*I@E6>@]R7Q>S--;$@'S?=S=R&AQD8#S^C_-J@$B M"4B,\>M''L;KK$X,:J.2,>?_R,,YB^Y"(6YXN$(?;^8QPJ7'B[2")0>36;6;(N(D(AK2VBOL'16" MTK2RP4+NNJ17FE2OVLJ-M"?Z&EWXL!3,6F%7)LKF@4GH4$XZ'Z*,="]MU-1M M)W)=FITPW-/5C/)Z7;QP15BPYZZJ+KISUTSDN(C]SU]%"E7!/6684O[,7"J^ MBAQ-A?>4Y9X$\1SJ%.,8_U4$TM:@_P0PHIR^W@9>C-,7%3 49CP3P37I+1V^ MV@HM=>S22(V3-EV'@D7B-^I[M\%-R"E;!!DK'MP6G\O?HE8DW,.@KY34(ZD4?/ 94 C[? M:I4SYW^-=+)6:L^NE7C&OTW+%\K:N=4EKS=M\5*)/5O[87HY6L3D34>O M2ID]:YX^EYAIW9M*T%!V3TFPV/'\<8GGXF^D^/4B=];_(LLW[0:J@GLB<<.X MB"2G-U6G>K&]32HW#+RW%T!1;M^^$$;$?Z0W4(D:X[UC-GLV#TP<4,PD% MF))1."5K=D4OG]]4YUOJT'M6*^VUH;_%>/Z[2"XGR8R\4E M&XN7\E#@:XA;*7^ODFH"B,F]TS>8^=NKT&P)+#HY5A M4>G6I&TMD%>KI_2?II=O.N,4RNN+%[1 Z#-\<-N3S7-!EF1%WG;SJJT2.YQ< M N[PX2;D=R3P8#!)IZY/9(,;L/#]"B#W0WD'/C_,[)C)NDVKK462S%RU@\I\ MW[XY_\U+0]M\\Z:G\&MDR4_5NC M!O9.'&Q1BG&TI#SI@S)XV*8FII;"%C&F[I)ZL8];+DVQ3&"I,(_].S:G:K>" MW5C8TA#];B[N0;=M;9 :B.5CX^9DFTZ-"U,/CI8S6PE?:-8G:Q81G_V+>M?! M @"D.%S !IRF-ON<3W+B"]P5B\CWB>CE0J0QE>=4!PIW;2'%B*M*GR=LA;H MGM'6A>E#C!"-YU=D(T9SP YW-=*[D!=0:8RU,\+H%KY/77E5)3UO[YY/TP09 M7E]:Z8UK#=.A1SD^OR"B*ZQM1ZGK^2V0?K3"F6A"DZ.]IW "BQ>7)E]QGPCD MN8->>[%)QG+YH6X+1_/@DE;F-RM9N7J^X M7*.WBE>ALE4\J5SR\G=YKE)\MW,JDL.(C &BD*(QU4I9IFO"*3Y;HQ*E*=%* M25)+IW"N5[&!RBE?IW,8[*>KX_$^^L2E8*>DGL1%93,A_DK'!^UCP:-DD%A>54,^)F:W@]A-(UG?X#]^1267FU6.7OO MA[&]AVK7\SG4ESUOQ9D ^A-T>'.9SQ(G)PJKU"!=?.;MU"NG'8O<*SJG'+6= MO";'$7@T>D'0MXN!5'A=-Q_X#&EM-8%JU9]"5:)XC>MPT2ACA':$O,NC09L7B M384P(+ZXH150&U.MQ/8*5JUN%'*L*0*3 5 ];FVALE*VT0K/"?\E"':R:R4+ME#EBO4*XJ[1V6IFI.ME.:"XAD^X9]I],AKPC2F6BG+*&H41)UD MIQ2S\)DV"]*4:J4L]R2 Y0Y^R\RWRAB@([!2H@8YOI7:RQ 0MP&N+6'61R/T M[.3DIXHL+4162H9G%V$@3V&26^ UJ[LQW4IY'L+@^I6Z,2*06P%R8P?Q*,MF M2&NKG)!'^A.!PLE0UQ_!-*^N_MK)K)3NT4"T%AHKY9+*58N%/N)0]60TO]AL M2=*;/*,7PKU[2C"V.?Y.#G#RD]1]W/.GH! K_=RHBZHWC"+>9/5AO M50+,3RA"C_>VTU=C8^(_4;[:N4GW4@4+,!AYG@QGCB?;L&I*!LA;D..9>5!1 M>78HH(3T%+BLD'TS6R"WG.66H>]1+I+)_"&,T(L+HP% Y@FR>.3IX8G4@7S' MH&=>W5Z!I+%"YM0(Z"YP)>-7E[;HN#>>IYT1?;>@*\IEP7A>,'A4[GY&N2S0 MY6*=,R,[&9^>PL>8NQC;9*N.T@E'^CF 0<1=)M0>GGT96= >EWXH:G"5%%I+ M87H5Y/X3[J%.(-],UO0GY*A0)H^6=@PM(=&00"3_)3XI7B* MIL36.I-U?2LNGR2[Y[/XC+>#-+43E9YYK3M+@6D_$##9B0L:O5 :8$#0( KY M9A1XC;=_\_[>,[.U_0*6.@B@E(M(;TF1RYAZTRF\2,%P:!)61F/*MRZ^!&]K MV[)@0MX*$5/O2H;#319(\F99\AGFA"SJKV*3KD-6>YT4)]2#60(K5[8LN[;+ M'OC8VTCH%B5]Q!H]R+045EI3V7;()Q8M,_>O;=].S^/1Y701X,5#/(Z7%XT$ MWKI"?T9U1(+],K4E/L&./ M=6+62>VU<2X2VNF2TBA[ *T:6ZR%9G^#IDZTJOKJ;VC F"X#@V9WH'&IDNZM M\GL2NP M4J)Q0+.AJ^(QJ$BP4H)M?+@.NV#YQEG/S+:L4O(]KC1\ )BZ#V'@EB,.M!'9 M>B&M>#CV%$[CV8I%=PQ]QZ'Z:-[C62%4//,_5AVJ&>:S8,]?O>-6L#74J;:" M!WUH'0KBRV)N ]>/\4!7^3:FC*1>B9+1/_O_L08IO)BY8]N4.5D;2*$<8%_] MF&KJ%Y2W2,<\]IKD7: M!* 6,@)U'_U0,;&U!]W35^;B"00&!2C$V:Z88&U4 M5EHQ90TN=%55R 2UVK=GLK;/=]!8>9,EG;EO5VO"^*K?M-'(R-JMB3SB(;Y2 M4 GYHTRR4M/K,1TO"><;@"G9(KI^=2GUJ*>XR=XGIP;-=?SE?8HN.9.Q&F]" MGFU(RUB5V4.7HPAO0^96GBGUV^R[&(]7\OJS_HWT+AFL[8&J'3_9YX*"FK81 M66U]* #1+[8ZYK$6VLP\? K39]G0-8S-F0L##EA&Z=O,^>&O*;5U8.LLAXU^ MQA2-SV"9,]BI :JMJ;%!&MX&,FZ@6A ?^"/[EJISH_55>M)[%S:V-%;+0V4% M(0O5U[X+U]!&';+;TC9MBC2-9VXZ(]WBENY<%%\8'E MSEF_L JKI.^GPW\#0EA&$_E6IQO6H&U(MQ'?PHMN5QA2_\\8S>I:2-[TV+,( M;]><5>G7'8-G[3)&M4S[,!-G$2EI4(PX4YW>&PDMA'8"_]]Z/MB9]L'^9I*VT@*:FM$;^O^IOMY,NF@^PYBFN^K MC88]9ZJCKE/5D<7#1;43F_;@_#RW]KI";T[?RJR8;/?B#K"?F& U?6BDL% ! M+F+! BI$X22N&B]N:\.TT]HH(?&NZ"RK:5TH9;*%@QA%"5^L?)65-BP?U2&=G=NWPSZ'P&\<2"5-CGH9]D6Q?8 7\B+ MJ-M'%HVS6-,*VQ7#S\?8!L)=TA7Y]7\!4$L#!!0 ( )*&>UA!(QN;;Q< M +9G 0 5 8W=C;RTR,#(S,3(S,5]C86PN>&UL[5U;;^,ZDGY?8/^#-OLR M"TP2Q\ZUT3T#QTG."9#$0>(S/?O48"0ZYAQ9]%)R+O/KMZB++5FB1%*R3=L9 M#$X[-EFLKZI8)(M%\OO?/\:N]8:93ZCW8^_HH+5G8<^F#O%>?^Q-_7WDVX3L M_?UO__D?W_]K?_^?ET]WED/MZ1A[@64SC +L6.\D&%D#.ID@S[K'C!'7M2X9 M<5ZQ91VU#DX.6@?GUOY^3.,2^5"'>E9(K'UP-/NE%].CWC>K<]@^.VRWVL?6 MV;>CDV_M<^OQ?E;P'O@;DLJ2+O'^_,;_\P)-6@#4\W_LC8)@\NWP\/W]_>#C MA;D'E+U"[5;G,"FX%Y7\]N&33.GW3E+VZ/"?]W?/]@B/T3[Q_ !Y]KP6)U-4 M[^CBXN(P_!6*^N2;']:_HS8*0M%7\F4)2_"_]I-B^_RK_:/V?N?HX,-W$KYR M;%6 AU])2?D9;)"S97UGU,5/>&B%^+X%GQ/\8\\GXXG+"8;?C1@>_MBSWVT* M#+8[1^V(O?]^#D#EW)IZU/.I2QQN 9?(Y<2?1Q@'_I[%J?_Q=)MAAU,ZL.GX MD/]X*$/E<"FLSK[T^\-;Z#ACK,UO$:G:3%\1WW:I/V58U%0/^:,;E[[[/>3: M;1GNU6DN7_:S%AL1?XI:@QKHVC:= OTG;&/RAEY<_("#*QP@XDJQ+4NI6:,) M&+(#_]9[9/258=_78KB,3H/L NT)9L'G(_3\H.LYU_\W)1.N4_C,=1VPJ G'$C\>_Q!; KM_@O;8!)OV*4A:UI -9MH$.2M M!^/,*P$+[_H^^/$>]0,?Q P]8#J>NKSC=L>4!>3?(6]:*'7;6"+,='M\-,C^ MV@A*R28:!'F'888!TAU/J!?YV? ;+FXM1#+T&F?_9AHDGQ_19SA>U&"^C%JC MYL6G$P/TD157]/4E'M),$4WSTFIB.2#!-[T1OJ2YH:Q!8%5DEP,&!GGJV<0E M<5>]P0YX8A=^>P+7-*#7PR'X8?*&^9]U(>HUUB#P:\0\6'SZCY@]CQ#3 R0D M$C-JP[24.W: > =LQ_RI2-E6/R'JHA?LADW]6BQPN Z^ M>E/&0&(+[!66^77:.3\^.SKMG+4[%VU8?)\?I9A.&4"79?E'S$[HP\><3637 MP7&)0W\Z'H?4]@DH-:D_9'1<++VX0:K"/&70%7_LP:>I#SS1"6\/N7O6.R:O MHR#\9<5:X>LD/N>%?_@<^ VYW.MW@QYB[!,ZX#^0.\4";4G5-4>+\GK*ZU8? MJH$Z+UQ[5G3,DBH9V)T6X&YMH(:5$<:*;1NDV%OO#;BE[!-8%R@R760[%%>) M*%94QR!%/3(\0<2Y_IA@S\?@6/K!"#.9$5*BYG:H51=HK.UC@[2=A,Y^DF#4 MF_H!S-0C()5N5Z+F=FA;%VBL[1.#M!W![P]A+3.A/G)_8W0Z@?69.^5;J_AKN(39Z,__,./D ET6EIG MTY2I#B;6XKFI$Y)4\*)R2E)8=N-4* TB5MV%01U08:4IJ=,:%#=-\TU#3390 M6@89R!U!+\0E <$\R^@YH/:?(^H"GWXTN2O9?:VNNCXL N--E<8+@4+)C^(@^^78A_,G N<4; M%GZR8Q&S6JF[)D@:K>4R'A0&FW Y\MO 6:%P#H(%;[XF-CBIU!F*(D TFURU3-RJ1S<7%VL:G*UX9K8*#\"@\Q,.Q$ M*?(5/KNH[!;I51Z?@6'Q.^J]#C ;7^&7BK2I@I);I$19=*;'Q%,":#!;JB;5 M;;*3)4C"P&!]NCM4QN&+"QNM= VO4(%,9OF\3L>0':4&Z",E#7%&7$6M;="Q M#D0#U]&"I47UQFA5O:P CD&,G8W3L1Y(F>7UVO>_T]8JM0E>6&$KE*R&SL L ML/PFVVQ2\OMUZ &?9%RF^&N#F&4G>O M4W 2M2VI0%IV! M*NS1\9AZE?I;+):%=V) R%Q;>5+0#'2X7</B,#BHHA[ /_?7#X-GJW]C MW3[T^O?7*[ZQ:/&NITOD$WO!BM-+*$'YE1_ X4JXH[Y_ U;FZ6R&F2\H4ME?5B+> M3H\I83 -M[+QYK0*>1CH.8'].<@2?[E0SC@OJ>T6S33<0K6H>;]-<7?52!K< M/5M.8^;84$WST+&SQ@2VD;:9N_O[^B-@"* 0#['/6U"0W["!:K>8%?K91EAI M8\:E8]G-2MI \Y[ETPBG "4E-]& M[F4EG]=9%2P#=?6$WS L0D2=-?G9/"U5R;IH*ZH$BX&JX<^S](_^&CP>]OCC'_PI)&=,/.('W(.\X?@LO<@+EM]9^3R Q_Q$U& BW^X'4\08>&>X@BQ5Z%;526S5:;0!'8#\T%@MD>S M0BGO_<+RYBE[_;-A-6$9&!Q-\$;,AXGIPF5[KF06Y/D:[R;3TT?1BED.I('3 MLH3U\MZ]4&I[-5@&< DCN."2J&B.F7BHY^F+3QR"6/ZRM8K2VZ,G': &CJK9 MH4?M(FNINMNC\?JP# V\(V:V/HCYCB\H*W7?N=)9L/PYF[;QRZ.E[SW)2>-'FL M8_ZXM>A]L:E[WX/Z+OF!KW#)W@!9<_ID97]<*F0#8VKS.(7 4N<% M-DB+DLP;>OIMYB65'*3D ;BY?URQ6^2H%IX7?X*>PH@-\./GQ[-?I$H^PNJ: M1U%LQB\-NL+1O[,'D.##"'FO^ E$<#T<8EMXS>F*F5A](CCG&7USL7'[^ MX?/+M&9;AET[(&]E+V'($\ATJ..6 7MEZS&PS%Y9/>D9.#Q(PBF>KY;T06V: MYIE=3:47).(T+A\##4M>:@H'1>H1W0'36H* #-SQUYW3;IC.I54D/2]>GK\0 M+%D5+NT-X_!QI'6>J52T8*U-=,>,8HE",] Y* "]H0S8C*^+MC\'#'E^I'B^ M^>?S[B.<2#?=S([9Y$K%6)E\L8:H>0;X PT*(<_WH)/B,M8H3^W+Z&I+JS*Q M8QVVA2<,VR32G.=TQWQK]-_AGR+[$=?851M1E(B!Z1^YR]:E<@,J:F7!'YD1 M)%Z%.:A+Q< TD5!(?C287M'I2S"*UE+#*CAJ#LD@,?(MH>=E_NV,' MJA*I?,]H#7.%Y)XR[/3HF+NTLFE"<>$=U;Z",)I_=$@0;^$6V8]>I8]FK23: MT?:<^4*^X 4:I;H[IN[ZLDFB;:VEJU\J/YT_VE!QBD.'SBZ:16-R2DQ$')%= MP]!0C&?V9FZ?7?'#QCQ3IF3+1HW(CAE1@T)*+,BD4.SB;ONME\R2G["-8:KT MXF+H'6&\>2[0\,RR.%%4EV)6:B:\;+P2TVI:8HF=-1E,%8]F"ZPGK_H6VHA4 MG1VS GV9)'HV*K"91\*]I0<-B3.>2NOLF#GHRR0Q!W%\TPAS>&08IN-.$JV+ M@W2)?U,<6F2(?1E076$EEB4.DRYQ0$G&PD?T&0^$\ V;SOCW$P#QD\*IM^_D M1I\:#>R8::U(@(FY-1B+59Z^S-Y$59O!S*I]68:\6!)]&Q5TS8.9/YHK]#!J ME;/"Z.S*2KJ&EI^#R<9( MO[RPLMZ7>2C()Q1,^9GQ_O!W[#H#FOS] MC&W^K]B!:-':8GMI7BX&9E?G^@.@A4$X^'QTD1< 5.YH)P69^^H$=L%4Z@G# MQ+SF1>OO#Y4M1)Y"5BK'YBZ$F_,FJM(P\.*YG-7/GZN>7UY:DJ*@36<7S*41 MF50F,Z_#L2PBNYSZQ,/\T$=X;TXX[8]^67Q24H?$+MJ*JC@J$YS78"8"*=T0 M#WEVC75Q 0'S3,38=;&L] R\)C?I);#82_)Q>G0\IE[XV'N%IRFN9)[AU%2; MV+QB.+(X8A$NA0T1?8L[&B1511VDTST9**B?Y&/^TI:#\9@G+61=FD380X;,+AA($R(Q\&!N)J;# M&>^'3/G7'YC9Q!>O7ZOJ[9A-R,M _BCN=<@V"N<("(*W<)Y''KN'6T M>$MN0M5B,[)_M3P<6'^)2:_Z9MQ"F'%BEL"FRZJ *L]:)ZVC5KM]VKDX.V^W M.ROOJWG^PI<754&E*V4M]-2 C0UE)>3[I0;DE=U"E>=MP)"#BW4H46,3%%@I M_86-;@W$!MXZ&&:"SB'XE>Y'7&'+E*P)>&6)*GEPZ:Q>N3Z:KK%EZM-%;&! MM>NZ]!UF?[C@]HPYLHH!5H7&)IB"^GA;6P(*,;.E/2(1)G#[_/0(?678]]6F MQ*?Y*?&,ID4\:Q)3U9T/"UQ5TL9/$HQZ4S^@8\SXAMD;9B\D?"6@\'"(5+5& M?&E12]TQ-XU+:"BWO)2J8TXG4M7!S'UJ093:E2AX=V4)*GSB1NRAU\6D[^H* M6ZJ\[#).?G8/_.^+GDS0H927&'\<[VR"+:!JX MS"QI96\K"?.[X#-_421@4YO3UATUS_*C9M+D7ZT);]1"GF/AI-GP+SO5;:RNA, 2L"MG 4 5, MUJ=C+GWLI.\:A<\N#C62O714-8NV*?);:4%+%<[:UU7%#X?:/KVZ$(+R+@Z2;2]XZ+ M.I@.)7/OPH^S Q=R @78:],USZO4, S-^^P5)",S?*US*:. .HE1/= @O+OA MCB(O&P>K;W/5;7S9G[:45K8CH #E#I8H/+69,P R_(D*;]:H17#K+&9)(M%< M2IOHJL+-%?XT=Q1$+[T]JB[9K"S/3=BC6+E#DA>,S*&V#3&R^-ZL[$59Y9M? M#5'_,CD-^6M^EEK-I*[R(?)IRW9Z&P MP7###=H,0X1HWJJ%4LVN;:VW*!Z8T?X M=.6.YH9XT)WNR!M/JLRR7!8TK*IFGFO05DC>/6B!-S" 6()#X #4K4% :%?M M0T4<:P\#YIA/<=P?+OZJ.CCDPH!%@T.Z28L.+9(KLZZQH43)XA!$>:6L>5V< MM$].C/()*5W$=V<^@'X'[]A]P_*>-F%%,Z\MZ*F1AX!U1&N"@9=%5EIK4O@RG4AH&Y@:KP[NA M4]:8Y7!B7X93)0P#KY320 =EF[,;*/ME-U7",/ DKAJZ[C# K%'CR5#\LB I MB:S[+.\=OQ:)WV8SH5Y\9P7_A@="E1;11ZW\(CJB'895$_)\W>SRKRT;6EC; M@GF&<<'NH;5?!656?>YO=LF[@$UQP8R-G;36>,N.0)3Y'B4)8F7G:_/\^,4Y M:$6[\M*5-TA1#0 S_?3"\PA<-[^HIZK'Y0MND"(50]Z2[;!'C3\RYE,4H&^G7)[:;A2$G!]&%41&F5Z>RFS93#-SUW4@5E M25Q6ED)D+(@92)J6K2R4C/A(?E5V$RU"#3S%XTSG(9L9K?-1<92 M2L.L*\QTA2_Q 'UD Z_1UY=X2#-%U%:[1T6)KIR6%7!BN6 LB7Y\"5M-_HJ* MKB_3E3-Q1WT_N0IA\7W$G(R2*W>35T&ZGI.EPL^D!9_W.!CQ1P'X&Q/CDA.! M*^6@J>=Y53F^@3_)J_= @^?I"S_2.J"I7XN"FXTW8IZC6H/MI1\%7H%X#7/^-"7Y9Y,+HV[ H#4SPTD!X!1_\@-C-F5]"\RM*9Q(V3H\ZYR=G M*_<=\>$Z-3SEE4SU '+RSW=@#;0&3E%B%#<8.$.NHJ9%M;+@VP!^W2E2&LH2 M:EP)M>E[4S&FYP %.+Q=PE:V@O*ZVVT+&MA-WVNZBM]J28W< !#^[<&71'RU M0D4U\^R@GOO7PFO@*B'!$7LUM1%?KK)YJM=2GM@&-.";/BY.0 M(;'U)J(M!,WA8NF+O"=L4\\F+HE/*L]G1?SIV0&-'I\E;^%+M*I+OT[%TB_; M. _W#Z/F>0D+UL]0E%K!"%LX82/Z=ET+PYDT9A+D8BE:]0LZDPJ!%;N*8M:R M*NHFLV;>#Z; PV>FL!)H)AV16AAT# M@AG+-RLE69B^RI$!',?[,R6NR#!\YC@@2'0K41.D=]&^M&1B>C*>#/#YI/() M^QB4,JIA67EBNVA+DE*0>JAX;C[*[UH*DAID$#QB-D8\F^46Q%B8M:!.95LL MH4GXIJ?:R<#LC9#W"@62Q284BD[N_@.YTTBAR3MD-3R+0BO;8FBK%(]1F7S7 MB'G\.1_H0.%K[VH+^'8^5R\A:(&<+9^37-M:_ $'\\WW[ANP$+ZC2GMT/.:S M7&K_&3]N?XG\7"Y$^C"B,J45^XX,?Z(T@SS?7#LE$FB8NCF^HI9J\TYCF?(Q M<"RE16WP,8Y@E?R$WU9;\;!(R\3(/8$I#K]B=1W_>< MGX@Q5)JOK4LQ:QK'8!HG:YZ":1K!0M]H5!ZF1SWE\%(/).J'NS"/;+;?!*ZF MEE4)J>ZP9:G)Q/08J$!L.7F530*5:&REY=270(/OFGX_C)0$_WE!/O[;_P-0 M2P,$% @ DH9[6!4@X4("5P W>0% !4 !C=V-O+3(P,C,Q,C,Q7V1E M9BYX;6SM?6N3XS:2X/>-N/^@\WVXW8AI]\/VC.T8SX7JU5,WU:6ZJFI[Y],$ MBX0DVA2A ?"'59L3NN$M, /E"(I%()/[Z?UXWT>P9D23$ M\4]?O?_ZW5B8/82INO9(]YNO7CV"1$21M'LC(3!"LUF[]]]_=W7[[[^?O;FS=]X M%V=>0IO@>,;[^O#U^_+#>=$;CG^?GCWX=O97WY\_]V/'[Z?W7TJ MX3Y1S):A#C *X]]^9/_S1,>;40KCY*>OUFFZ_?'MVY>7EZ]?GTCT-28KVOC= M-V]+P*]RR!]?D[ &_?)-"?O^[7]_NGGPUVCCO0GC)/5B_]"*=2-J]_Z''WYX MR[_N0>GP0;J'K6+SW=O\(P5-PA\3/M0-]KV4BT=+PDP*P?YZ4X*]83^]>?_A MS3?OOWY-@A*O!@4:/M&OH0)^SZ&__<=LELN$X C=H^6,L^/'=+=%/WV5A)MM MQ#KEOZT)6O[TE?_B8XKDAV_>?\A1_%\/*=4/IGCG.$YP% 9,7WCS5OV\:U)+V_'0??.(_3S&J6A[T7]X'[4Y7"$['], M%LMK:BTVJ!]JM/V.0])#BOW?UC@*J%F\_'<6IKM>*!)U.PY!YUZROHKP2_LY M(NEM9/3[US)9U[T0=A$F?H23C*"Y[^,L3NFB>D>Q\$.4S(,@9$;=BZ[C)28; M;N$O4.J%D9&4VO<].&F,I_,X8/]A:O[L18S7/=&FZ7QPXNX(WB*2[NZHW4TI M(@R)+5.FGNC3]S\XB1\Q#EZH&T='OX[I"KX*GR(T3Q+4FQ!-1AB:M5@2MF-F[1\\HSE!/U"F[[IFP'@W*N.:#J4"< M8K)KA6NS==]\Q7%*/#^EJDK-#A5FTI*IBGYZ1EEJ'IE0Z1J?DLQGJUU'BCH, MTS/![%^8S;P,!0N*$U_+DT_H-?0Q'?M7Y-.5X1E%F*-WZQ$&00U/*[([#^:4 M^!%(AD'H51C335_8W77L<=C>+6?=+3C'"5]&Z4*4;;*(+3KS#29I^'M[ZMN. M,3"IO= R%+(WR$M0PO\W'XCRZR;TGL*([CA:6AW3/GOG.PLP/'JO*+E%Z0V. M5X^(;"[0$A&" OI[B4/;U=NZ^^$([&^W:=QIS\0\H!6S05W15W0S.,*%EYQ< M>B1&P=GND_7"V]#=M;?ON?:>1I(MEJ824S1]13-T-%@"8!YLP#JE'S5W)R]U*PH#D_-CS'&S84UU/^ZV++]9ANQ)[; M+M+VO8]"WB\H7*V9^_E,>;Y"5UY(?O:B#"V6.5;)/+V@[NEB^9'D5HNZ?R2, MD]"O@UV^(N*'M/,>F3,<;J.PMD=.#(7X/4I#P@\HSNBD6X8MMP2*;GI&N+(Q M9)&1/.39V])EWWOO%GNS"?>!W'.^85ZAV&^[WS'IKW>5XMO9.X]Z.H]T7B8> M#U^U52Q-9WU/Y&Q+X1F_O.CPZ^'LKK-OU*)_=R3VZ!/V-6B%&1[Q2WX4_SS& M!B4;[VN44;>;_8?GI;Q%"5J^+>#?OH0!(F]BCQ#\@LA76KZ*\D\B0O;]L0'? M%']0_K___LW[]V\^Y!(X'DL@5KMUPHL#CP1L6O,]U/PU3"[PQ@LILY9>%K'\ M$O/UR[BS.G-:Z":C+2E3D99>\L2YF"5O5IZW92E6W[Q%=#SV"^LRX3AS?!$* M-DVU:W212X+"OKU\3>D"RB)5ES$UYGG,\8;ZDS:*M!=T&*=O@W"S%[871>TT MII)[Q;*CON/$\=ZZ(T7_S4C&\9L@%UR/* KZ[A5AKF_#X%MTW0.ZO*S5?SP MKTJ<>?Z4\%/,T+13U\I(/_U_HA*#>S;\>DK3G7B%0^O[T/.YQEAZ4X2 M4M6-I%3KF]48<%#'.:FS@DZ78'W[XX=V[V9O9H6?Z1]GYC/8^ MR[N?L?[+I6<_0K>)E"#_ZQ5^?AN@,)]#]!^'J4/_^-=%<7&BNH$J?F+X'$T: M@Q:-Z6+8IJ/),*?THN8["@C+ 91T'$#:SF\[3F+9\!TGM'0'T)C41OBRR2W& M\[!..%@:#NG6D9>4&>\"[=;"2Y<"90L'%%?1$.J['%!*HQBTZ_IFPFNL0V*T M66" =76!$V/K="[DB1)[_,M+7(K9H&@AU15-&SAT*R>'LHTM[?U-&3.!8 N, M1I\_2A*J,TB+.HR%);\WQ4[A<,P/4 P6%U$;_0(C:^6 ^B-4E%-)""NE5@K= MVVJC83XVP,7=HB-&OCIMI$CW-EWT_O8-6GG194SIV4EV$D<00H]; #,XYOEP MTGU"];,0YV. +GL$.8^P>+!1=P0-[,H=P#%63LVT^':-PD;+&\B]8V43!T3? MHR0EH9^B0(R:^-=/M=C.$5NZ="EE7-=.NRX)1K+&_>$[^K*A(K"Z9G0EK/\I MGI"THNGTKX.6TS\.Z^$A$]:+!+-:"=O02RWT6-3EJ;%5#(0KDA)63)T*NNUT M,F4R-L!AM"FB09K-#BVRHZM]M68 7V99?%VL]3)0H5JH@!V2)E5Z.; Q>?VH MO0&7L0D.HZJ]'.E2Z]7(.G7HSK(DC%&2S'VZ$"6A)H E@99Z) IX(+2R?Q*$ ME#MN;3LK^ALMN[I=>J%@2XQ&=ZRD)%2]*B/4NTRF9JX>^^5?^P3X"Y0BPJY& MQ*M/*%WC0#!3#%HTM,6PS0@$":>!41M;HKJKOQVGL05&HZF_$0EL"ABC#B.& M6\[4PMLSBN&*VNACN+)6+JC/45"N)#48.77'4+W%:C5,Q@HX,Q?YZXQ'54;FNF3Q>9M 0!!M*I-3'Z)IF%FQH M-NP/@-U[\4HT26K?A$&@VMJQQ] ME6/<_;1#QAHL'&742%0%K3+T=(2.4QLMK<2AM=4&+:6VR[ M)'YH;;A!2WM^ M]&O3[42&K?$;W<8;$52U]8:$C'_JP6\$^*)4DN//XO#_$4!/221^T6V.>OG7 M ?7REW_-HZA 07:FH0)M!JHTP)W.,\2\Q/I1QSW!J*') TX:]-R=4#]0_\DC M(=:=3E?AU"?3QY!C450,^SE.MLCG;U[(3Z5EL&+*5-"]G$I+F(L-QG=S(EU' M>'\:K4)T=!5?O,2().MP*U'MVG>AX!L08V,N5> C"#7V_2BKC%U8.MJHJGF$ M7JF2 K0&.-)B'LAB>;=F93EEAUC',.(3'A'4(&C*CZ::4'I4>SI^4O (*T<= M]XBIB>;^4$F,WOC+N[]&01915/)\Z_Q1A:ZZ-*=9$GMUN%( M;)2A(;7+Z@9"5NB;='(Q^I$<-L5U7'>D$W'E$J$GRNTI+$ MBSX2G&WYW5:Z^]#>']6TDBJ103M8/%!.(FV[-GSH;U*9"PE;8C;Z)-.24IUL M1B1 NK!=?5F15STN*R >RHLD9[L:60GM(LK8TZGBAS7,[WX/-+A4]<<;WK4E MT>$I]8<[]F9F=>SZZ_E^^_!*)S-I=F2[OD0_&)^D]M*./P-$A,H7OGX)TW7Y M.H0L,B2#%8==5-"#HB^/&,FAS4GH*8)DP$MLA,6X$24YVOO(DAI=MY=>*O/; MH&R+#%Q^[4/1 BYZ@LOT@96)/=XQ44O 6R*R_B76Z3(UVZW*)%V.EWV%P_. M=OSY+N[<*^:+%%ZJ/+^!ZQDW&Z3)]Y29A\CO%3@LBS M]Q2AZWB;I?0SCOTP"KGXJL0HY]M0P^GY/<" 7>>ZB?;@<4@9W50H:*_:BB%I MAF)I]O_\>TB=8.*O=S?LH4HSLZ-H;&*#-,U=,J:0-;\(TT33S,J8]*%GDVDO M/=H#,[&*C(,ILBYGO)(ZX?0WI0K*G#Z4O3;W()IM3&:PN)5+ZBLEG%O;ZSI5 M9I-]J''U4AARY!Z-BE+!1+9D2+IC95;4W M?V45CII PO0?,=A(A+ P^&)9?\)8EMHDA162I83NDM"D9"LV&'S4#"41MF7> MD1)+MRXF(X$N2\^(O47JQ2OV#%&^-RY>>-8ZG.8]R!T?NSY@\>F G_9\U+*7 M-OR2]=/9[6LE9MP)Y_%=.ALB:PZ>/7%.I[WLF=*S7?6+8M:;=R!58KLN'#-) M.:V;@$9$]S^&6F_;BQYWQMU!$I$EL?77.5H1Z=KM/GZW7>UBBZ!5[J$,W@&MW)(O MV9XH#AX0>0[],%XMEJ*GZUF:>2+^I)SO?0XAY6K?@_3@D6NT @^'O O77$QM MU13T3:53&['@W&76[14%C_@Z23)*67Z%27,UR*2I5,]-&P-DB=)(F#5NS9;^ M)K:E]' ;'$>?OV9$U1]F-27&[:6]M4?0F9>@@+UT1-G"CVGXK\D\2]>8A+^C MX#,E@_ G^'*R6%R;^C67KXCX88+N2.@C646Q 4>27YX;9JS3DD^3#O45Q?Y' M&D(^JK$Z7XL<5$7QX/2/?QES"(;5+G(.PZC1#^(>&0L72[HZW#[B"_E;\"UZ,&,"_H^NISIZ<2#6V,UZF&?A(SR MO*\%^DY]F/F+1P+-GJ(&(UV7&E!@5OPY(V>X <^?M^&:2(7[ /@Z8 M"=0&&H<8RG+-[SY8UT5?IAG:Y;H[ZJ.OUT>TZE?:[C0.<&7Q'J5AGOS*AI-= M5FQ"B>_XB>$&0E9^-5$$9X)P3]<1E=S"FI''O8(H0G5_^5"&X@!J>,'P8M,E M3DGXE)6.Y^5F&^$=(I^\U%^'\:KVG;JD%#663$,_RC2WEX[%NM-;UW"X*)]2 M/74]$"=[FKA]*PONG[YQS4-/#-E;E!X9X?:A#(*",+WR?%V2W2,?A?RB LO0*?^MVT=VZ%*^[>S8J9/LLBHBFORR)J@BPTP,W'F7UX_< ML![3\3=UG4BK9Z*)27(ZB<45,V]Q[%<>URW+82IFKG4_4AUMU1-TSBFG<(N> M^N%>?P:@B_AQ9^Q'-PHMR*U:@I9D#K#+GJ\(0I(,LR: >*_6 .D?._DN] A$ M@V%/NT(94[!\O'%W:4<([G=; L1&/ZR[(SC(_'1!\B0L6:UQ$9CPD$H&."XY MAZPR24U]):R*,#%TEW,V#6NQP?"C'JB)\2W/TY1X#F R\W>G).9R_U%LB&J? M^\5(;B)5EXY% )U,HX@!6#S.N":Q@MC>' Y^@=CJ8!*3]!&1S05ZTE9W%\$J MC@8ET!"HU)R@"J'-*>TS>4G-@52A[+IPSJ0".>6<4K0P9$.C3=>YU4I0V!B]T2>= M#3W5F:BAPVVP-_@UR[>IR14FM^BEB(M17*D#%M-_^GD>@RJZ:].'/)QKVXN+ M:TT[]OS3/,BU3OBTL@I4?LU( MPY?MM2,EB/VO@!6SM::E>$)#0 B-!>QRDB M*$GY38=@0=A_\["SQE2'GT7HNT>F6*@!A8<0E=!@Z"4,UE?#&X!;%]7JO7\!V;X>'H MG8TFXO6;\'*$H10RK11>O2+\A3'E!L^@I?P:O%E;(#6)]WA95R(^:JGGA[IM MCP5"#42F*3DLP,]EH4\Y0;HJPP)"G$[)P@\^9*!:4*[V-)6LN_G M<7!+5>;P2[7$D'+_9MF+?%MKWT_7R:@3'>Z$W>A344).=?*U(,-M5NF:(7<= M'[:PETD:;KQ4O^\S:2I/S#1L#(HEVKV>2=,6+.EWCVQ>AE&,QW%P(I$31DX"$(U&:EB< MB^ZQ^J.$[-L/#0;U#,>+UC%(Y MPFX=R'##BRN5-9<6RX\8!ZJ4'XN6!P"PS' M=RA-2*J='YB27EZ]91LO7/MZ\Y>3N'UT] MKZ245A_#VT_ 7*[H-45Q@((CKKQ[]_[=N]F;V;X[^N_SQ>W#XN;Z8OYX>3$[ MF]_,;\\O9P]_O[Q\?/C*049)B=DC"_G*$DF.@%QDONP%PLI-+I:\H(HJQT<. M;S]5C6?)FK8D?O:$WNSG2U5;11-?+(!:0HR"0HN <>K,I1E++0:Y/-0$(* E M@#-3 9PY$\"'G@1P!D< ^TE,%WIT3?^I71TJ@ ,*P(LB8_O30%VX%!2+Q;%/ M1Q$(TA_92^W4(;F,..A/7R5HQ?YQ^![A! 4_?962S,UBGE>/GC\E_"EN663X M" C*!#&3U#'V6Q+R4T.N .YG2H[>>48("_2:"*(!"V7%$"M34Q8- H")Y-Q+ MUO,X8/]A>1G/7L3#[.FY1\B.[HOXJ9=L03%K"TMD$NVK+3-F= &39'GG^7!C M^1:E!;6R.:9L L7T&-%'@K/M=>Q'64!76OJKS^]6L!31 M+2*\ *-F3>O0X>@2_W/7%:\#L2 5P42V0!T4X[T .-;?$4RUHWB:EYI^YO1N M>7$+J6NB;@++55$O>RHZ^I63Y"(X.^M)2<93F*YCBM"*H$1X3UT&"8/(K M?.]X=8.\!-V'JW6Z6'Y.>9N?NJ@903G)ME50BR8'/YF7U M48M3RCMOQXXHZ9^$&N+BX"4I3UX*W)K8B@)#G;L$*%A%]+L?FH%-U"-ZS [N MCX&A1,3-Y*BC!IZ$N(KEKYR@,Q13!FN/+#2-H"R#UA)34@5,X5RCF!I6WM2C90\H;4,P8JELH1KSPQDP&". M ]J[+X"C_G7C_^B]5JB49Z=I6X$Y)^BR% KH B8]R3Y&?[*J;S>^!'L)G!A0 M!DV&+(Q:U3.C8W%)@_&EUDL(1442,'%5L-3[&" #QEU.=,")@]U8#].R=&'M M?0GIQEO1 F"TV%I<2@*!B:])V7X#*?RPTP6M5: E? =*7QUCK/J%KT0$JY,-9=( MFZ0 $TQ>0T8KE288%%?)?K6MTP%,'O,@"//A[[R0[FS/O6V8>K)\=BDT%,_( M3CI26U'\K6+9.&4/P5.]&94 9, MBDT"C;T-."?I7?U(<%+Y%,8K;[VO2#DR&_;!@T/TAY"5R M^'U".XX!TS+=AEH?\),T@[L"]ZT9>EYH9>ZD[O.=QZ+-:Y2&_L$WUA:!_LZ\ M"/3L/VM#_-=4%%J/YU04>BH*;6("IZ+04U%H=P*8BD)/1:&GHM!F<7KJ RT( MIRS@T=([1![6U"\R"MW+&T.94&:2-:4*V.ZHCC;',2F>S?W]X!TK)=AL!&?/ M;"^Y)C4G(+'\.7 +:94-X.QAVTJJI.0$I+3(TB3U8K8QMQ!5K16<>');>=7( M 2:TRK&?Y9IFU!+*E2TSX1F1!%> ADN9L@64BUK6 @._B#5P5:Y@4F@H=[-: M"@CHVM7 4[]PJ9M N4_54DQV2]98D>[]CW2SGU]M:!/N_J .=S\\TO]\NKQ] M?)@MKF;7M^>+3Y=3T-L8SUPN![5C@S#%EX>]E2U.+?"M),:]G9.@IXR":]H M"H@;Z)Z!K"!%QY-TL7SP(I1H8K,-."BQ<2.%JR]%#5K<"^(CBA'QHGD/I!^O#P[2>/&?Z-^NKSNQC\\+L[_ M\??%S<7E_I:O+.=XL\4QOU!L8,O$;1S9,YVKH+=G8G+MP+Z?B>I<81$P-#20XR%HN,$/?R$-^Y44I%W01* M(I"Q;-3DN)?0%! ]C8#H=&FT]^#I%WKQTS1W!4+"2J<$9OB)E5S#\FRGBXPP MO4(4P3R9\!:]\"]R>VO4%HJS8C'E]$2=AAAS_6LIQT9C*)Y-)T$VJ!KED:SR MN&NQO$>,4HH.M=7G35N=7,<43_](4BW[.(VTYI;$G=(,G/MT\4XX\UM-PGK[ MTTI^MB#L-$3*EP*JF<_4*:/(+9;YOU/VBO,#\BFDHEIMQSY/*ZVZ([&GH0ZY M(O>L#\:=GE8"=U=J(6I$?KR(@@4Y]Z)(H.DJR1LT!O->AH6(#<@Z-5'F.MI6 MEF5K,*]K]"3,DBY@TKPC>!FF-SB1":P* .;Q#-.KFP?4@;%=M=[S;PN.77+Y M2CWX,)'>*FO1#YCW,[I[1A(*3T/6N4'H0=C*CL"\N]&#VW,:XMZ_NGKN)6N) M)(]@QA=2IWC1$?; ^#\/?LV2_)6)1RPYY.;Z].11]6&G?BA.^)6(>Y1OL:DC M39Y#'^6Z=X]\O,H%HG)2AQ]V?"WI=/=^>(: 3']G<^(JPB\'GJBSWK^UR7H_ MGS_\?79UL_CE8Y3KON4ZWZBN>Y?0):H31U'8-R? MNH4R [M)MS]^ )NOL(\7)('I?F8JX-.'6FB&Q55B/XQ0S;0\XGY6U6&&@J(I M+2)AO?%@%--_$29;G'C11X*S[3ZCFO[JYR8*!7L+Q9_*+FK$7&^V7D@VS:?" M^^H4RJ(^Y$S:+PP]\ N8 ;*@Z H3%*[B_*UV/R^,$O$O'ZF8$L9A:;)!_\- M<3>&UKOA. A9$V]Q*B2-$<#P7\0EN(G"V?0&94%SHE"3"46R9C"5C&AU&" M$4R[%O&<[B/2W"',;T-1Q^&PU4THS:*8@WE;*/=$1@DMF+-EQ),&1AH+@^?W M^#^A=(TI6=2&Y-Q@S_=F3TD8A!YI7A?JT ^8^R.CB+X=CX 9<3':^P35!;E@ MY:O9N8GB0JEM)V"NIHQE]6T9!$Q)*#<(HFO6!QV7_B?E&:(.RE.$J*+S MV.F!,\PF*EZX:-\CF%LT8ZE/)VZ-M>X<84OUZ8[;U[B0INP(2L)!)RDK*1RG M"*VW*PM7L+*;!)VS$GO+D/: $I;6P$]*1=LXTY90$MC;:^NA(*TAR<#F*279 M1RC@IY\L6V4>!Y^\E!50W"V6?T=1\(C+O[6U*5OV!26;O)L2=&0"-+4XUF9* M%EUUTMU=Y,4II8D=AFX%5UO:= E[;LG!;"@')K4CW1WL;06NTT/4'9APTQ\ M)>G0!'^LLV=90ET6=E>%,BQ M(M6L0S]0=F,#:8&> TMAV62/@^W@#5189[2MO'TE+M]HL#LWZP;X%MU6ZM;T ]8#FYKY!NV [\@[2/HT"N93?=PO/3@0"@?HAO$("O1EZ4.U]MFAH>1SLO0#.,5T$VKP]F/O'AI%G<\J R53U=-WA%6_E)4.[ M+L $HVV5V?3!OR;)<$7^7B_2]X!BR#V)[#TXD50?2\[CV!MV@[!X-UDN)X-V M8"+#781G0"4LHKMF\M-R14^U)&X8=L6V24,O*O[F!8LI=U2E M6SOW"R;6W$57>N #[*<;*>+TES5*0_]0ZEG[CN-W;=YQG/UG;;#_FMYUU.,Y MO>LXO>MH8A"G=QVG=QT!ONLXO2QX&B\+*M^BSW^G3G'Q1K5E $?:"91X@*FD M[:@#ME%H;'USQ.U# \UV4$(#AJ%W/4$N/'86NZ=6(".H*/O$-(QZ[CX[5J]< M,5ABLN%Q_0M$MZV1V=/KW[[[\.X]==,/@] _#N/,ML5 [-?]6+/*8+/_+(:; MG'8#/,N+00^YF4],''=QFY-UWL7DN#>#!3Y*W_T(!J+;KM*PFCSJI Q50Z 8 MYI[;"*$#+@>#XG(+-6-_\5^(^E#L/,LB\3:F\16,"Z5D7A7CX50P=[Q4VE>' M ..V:!2OCO50_/ODQ=G2\U/NVGZFK%!P4@X+Y7Q S5,Y_NX7J-*R\]NE^1,5 M"O=!"NW(<=#ML*2.@Y00F!+)K_XBI1MAT Z0:Z'1.YVLC@@;K%@1U;Q?J"Z1 MV^#=I?QJ=6\A]>Y*$(>QPB\QW9N: S%GNSQ%2")NJQ[ Q'>,9&Q%VBB%81^0]\(64%9S MGB1HD6QP$B;<[HQ$ZJFJW-OZ_F2AS\Z=PDFOJ24:3^T M IN]RO/OBF5JE1U0;P\E<[2'Q( Z8)5R-Z-XM>';E&ZO]#\$>/@)8PBB4S-FD*I M3F F2S.:@,E0(R>'LNA47P\LOROUW_@5/&E*U#'8B=5*:. /3 ZE#\PO7%"' M*$RIS_2[=!,H!S^Q&@1R0J!EI!57U(\NIMNFI'TP2TECH\R\.)BQJS4S=!AO MRDHS+ 71%)7B3%G5X-3RT52TN+=SC9(/1WB*?]5<<.C2)8##"7.UK=^$Z$*V M>TT0/B.C%+2RA>L#FCX5O#:=542[E^)T!'$:1Q"=JN]HBM/TU/=I'5#T1#2P M;<@5)BA^WU#"TIS*/W*E$&JQZ@&.U>9T=52ZRX 4P7 MCLE,SSU"=G2CH@P4:!I!F>2#25S' (!"_AR',=N-!GEI&(5D&Y!0#AP'%6># MZE'.(G58LR?WKN/"P)QY\7%M]+:=0#EO[%VD;1DRBK0+Q]Y,J@I@*.>(PTA/ M03BT<*'TC3S;B.$W9A'#AQE=Q3K'P[E8OM1V@[ MY*E0F1M? ?CV0BVH\=*MAG[R7L--MI'R\^B[:W]1D"!=N3\G:)E%-^%2%BHT:NEZVMC)U(@D8">'!CA? MH,0G(4=RL60/7%ZR,'?"KB1F#*:$0SL4*:]!4*J. M;Z?8'HM\:W8L4H[(ST/"_9@SCP\ZG8M\\>6Y6I]_3.6YIO)- L!P8M3B5P)81,>.S76CK#=L L/,62F4@A*'M/']HEOJ7>;(2>TZ+>/:LXZ,4[G0Q,6KE>!=K)P80R M]Y[JE_,^@'7%1D-R ,AH>A]@>A] S-OI?8#I?0 G@=+I?8#I?8#I2._$CO2F M,J=_U#*G7WY5O4XG>BZKZDG6MLLD#3?LA>S]QO.@=WO';HM)KG_[1_%$2U_K MKL"LC/K*IJUI="3,\M)Q?F/U\M5'*$#! 6I[@9)HVTJ$>O) 24]T[;Y- M!U!R=WN4&@[LP2ARG@\1XB/.*4'_1%#_-,3P%.(WZY"R[Y<[24UM#%"+'AVXSUA M0DW7)Y:>$7I1PDK;R@.'+3HYC>.!%H0!F"A3J'&,4*-L0E%'A&G%%2;WR,>K M./R=[Z?+%7K.RT0+9Y%AR].(#EJ1!,P)9]GJ:9&'4$$V",(<*7DPJ54/IQ4( MM"(-F&"I^YQMLHCMQNGFFZ3A[UY^_X![S!2886HZ+?O-6*H!6S M]^RQNYCG;5J%I_YL%IZJ#34C^5A37&J*2TUQJ2DN)5G#\HS,PBXI>N4IP,)MO M\YS5L=C,$K=2DO$W'!Z0)K]: 0QF&ZT.XLL)&(K!BVV1%9?P8P)*'(J]V!?7 M]#)J 68KK&2UCHKA*L\GX2IF3U+1H;.(;4#T%P<,&H'9IRJY;D"(>S?Y,=Q0 MO!;+,D]TL63Y&PM28*K8T!BU/)5KV%9$@9>:25' M>_&,",5;O"(9P$/985DI:$UHWF'*H>O81EK"1E"V<7V(3$C@5 "W MARO?4P'<+Z\ +O!JK98%<$>IUGKB-84_V+%TE)K"%NO?^9HA>QT?SI/*6Q3: M=XS,FCJRQKK\#/F#Z$94019"J30&8^S9*:B;+*J$095D4M?*+XDE7 MF,R3$JJD0>FB=NO2]<+41LG5@K>AWKU"3(G%IU'#H#Q&D$CG\-FU6V(GG0/> MP'+@"L2N*$WG5#?8JY^_A.GZ/$M2O$%$\_*\<6LP1X8VTM*3-4I*W&W&*%LL M+[Q=,E_RFJ-QDFWX0&=A1#M8)7."SG$4(?:8J^B\P+X/* N6I8+N#Q;L*88E MS+P\!0KNO"2]$-\[;]\7%.,YN' ;E ,SO[@@'R%=P*1T0*VD,(PS%IO?'^/?(7+F):'_L/:( M+$_6NAF-MHB0U)G.L'3/U M'_^4,I5_YO407(Y <#V?4<$S-.R%J6H,*=I(]][\GI;GN/1>Y= M*&_42V!=IC*<1UZ2+)8/*?9_,[E4WX2'M>]6BD.8Z]"D"("=J^"D3AH3 +8 M>!NK6JQ/]UL(C_6\"N2]]Z*ZJ=P M N/:ZIDIP'[(J\G9AAFM1*.>,D@PWJB>KS(2!BM;L/4(NO-(JN.M!!",;ZAG MK80"]TO;?H'6Q3)$@&[#%W+4ZX=C0@_D1",4>VH^$GD.PS$0%--N*; ">V![ MWCUZMTB60ED'@;( 6'*?XPZ6]SC.(\1Z$50@H:P7MI*HD.#XW+Y(3$BNXSN" M5P0EEH?V?Q8;OM9*#OZFKR;9=']6\>"CV*-+C"3K5 ('H[[-P$9:0;\CH14X?(Z3 M+?+#94C1%YE>#2P 6ZM5P3W_Y62XE0&=T\CW).^DJ0!=6SLC13IF_S$1;C8( M%I.Y$?L9))1PXSI8/S#3#+(KN/BL5KV? _]O^#1>Y5X3*UZ M*/LQA&3F%.H''8K];&]3&&2T-2YX0S(?('&F)O91Q]KC1P??;A M4GP5-CB3W2U*65W7IZ*2@:D$&\U<7U9V*<<&,X!%'D^A\L.?G2V84X6( 2OS MCRC'+Z:2Q!=23^![9YHP1-T!@'KR!50<^0&VC@"N3"+BTDWH41^$XMA@DNST MP;*3\2-P[YPIB"UO1O'@S[R(O1/TL$8HO6'M&/?%=1,-X,<7IZ,@G)H-)S"S M^:O6U%$]5R87&K5T'44WUF/=9&Q0=@)RW!L0>T$VFX((:O8AR29I;M-)J>VA M7D"ZNZ.DI=3>L%NR6Q9/+]X.*U_):YMM^I=FMFDYY)]F6S8HKQ:%RF'SVE&5 M@?M*2>VQAI249V9EI'3-'J"N#:VVFA?%615$EQS_FS+(P"GJ2EX/XQD&LO MI:,$CLD9:F?70$N>TRT%=7T4VI+5:J(&>PLWI.Y4^)2QCA]V"=LW*M[ E0.[ M/L#LPG0%6>ZMS55&*"NI>TR)N0I?V;_$$C)IX/IXLJ,54I'F7E(_HW7H1QKI M' .Y/F'L*)%CT+WA,\\$4XM$V<+UR6%7STE%VU!KRHWW M9+!^BZ!C>N<57O2Q"4R=5O\$\TQE9*EJDFA M:P1^^Z*4N8XZ8"'SN>]GFRSR4A1)^TE%K1'Q^ Z8\44WE-%'43\)N[=K,?8@T5\<&*RG0K6X#?\"DEIR3- M[>$8^U>>+8."0[+,)_0:^I@B^BORTPOTC"*<:YI'&,0SLCPB^[YY1%8=>(;W M(],O^>#L1(R-/@L.P[^9'1 8D22=;B5W' ] M^@[U0$O&\/*FWA$9;BY'[I&07DMM0 X<))J28.W0Q=JO7TXGZ\R3[[I/@)P M?2ZDD/GAYPLB824,1@K+]@F@@)@$)2J M(63FT!;@*B1)RH>23_XFC.MYK]&$/2>;F ]69AO1_5R@8:0 R'5(UI23 M1= M55XIC1*+/J2[O,C2P4 U?T7HUMN(4AR[=^?(7DL":^;;Q&Y4NQ&\#"?I)E/7 M ,!ZT)="EW+5D3R4]6-;N^0"W>/$(V&*'[QM>('.G^664-/ ]?IBKF][ ZFA M2,5Y!V:_!8'C[. U1N">5<^3F/+*-T=V61(V-[?+%1(<\E=:S*SV%8CY;&A$ MC9=NM?43Y?0=@M43*$#)T"-LW8>'A//J1I,1HVOD-AO&C"1Q)DS3 MN)QH[@M5-'XF>$WQ))2D?6SYCEI>BJFW0F?\P09V_0[S.C4YB$3D'?ISO4ZW MUXL.1(]R^_L1IUYTP&6QW"-88LQ*Z5(7A:#@'&^V7KP3!GK:= ,EX\55;]"24*Q9'V5A%$X^H"\%_8"'RL90!*T2#8X">G^(O%H MVSR3B25AL-HOWNZ.8!\E"9W"Y][6\RENXNA3QRZAI*%8RJXSW<"2B^8$>8LE MNTTG6>^J %!N)M@O8%4J@$E '*@1K+ 2 5FTAW)SP5Y^%D2.8E'I@"'#Y)=U MZ*^K.6F?LB0]0VS!C)!D!3-O"^7N@Z6--"=P1%G=H]R7><1Y;AZ[,/:)LH 5 M&BU3$.?_SBB=XH)!;7IQ736LD_SL2!U'DMZ.H7Z%";/D=/S[<+5.%\M?O-W? M4<3>Q*@D6 J%:->!\ZI>;05H1^8HLKO-&*6+)76+DD?\D#UMPO0FI%O))=TW MLB)6U)]B@8;+URV*$R3,<;#OPWDAKY82M*=T%"&*4YS-!6C7?GSA=0Z8M* 2 MF#O*"C_F11]7*/9W%]Z&>E7) \ZH!?G9BS*9&VK0;GQY=@Z56% '38Z4MRNN M>0\H3?/P;*%T,@FJ6HPON\ZQ%B.ZQC*;6YQXT4>"L^W^G0FAF5BD:T0*[*XW M6R\D,E^FAT['%VH_09@>2#^EJT*V%X0^]'%!R.FEH+P&\3[3N5I*D>TZ@B#, M976@,CG;U;0B4:N%\H;1:*,[6!9J:/),YW 9%L4IY?<5M*U@77$:67VJBXV6 M4^X] P6*RGL1!NT I'%8*KJA[. 4^7O(#]AE*XBBJ(U12]=I(]9*6DM?,*'0 MO0B'-T\*4S[6X+#NL3E<$<9BN'N]MD):FFW=N3= B]"X,UVZEMEP;Z@]L&QS M(T_KUK4 N539J_U^5ZNC%UB :7C=;@0 1E_*;J"D2Z#_84D-SU[$8ETF:V"[?J$DG3K6X!XX"^ :5+Y6&"(>E&G M]MU!25MWK%/M&7A*R2E784RY&GK1=;S$9%/4R[9+6/FFEX25-[,]+K,*,E,B MRY3(,B6R3(DL4R++E,CB^G1P2F29$EFF1)8ID65*9)D26:9$%B!QDRF194ID MF1)9]B:@25/.-'8%\HK*4@ARAI:8H!SPT7N5KX3]]#XEM?3+SU$.;PT0$UX: M-VOW!\\ML>"4V^CR=9QZ\2JD1K)((,!)RC);*D\O5I]8M LE_]!\'.TPWLSC M ]+?^)@S+PYFWF'4F5<9%LR3: 6ST4WXC()CWID^DV;2B8/%YDJ.U-GND_HH@!6/4 *[3;3LA5ZV]%O'LW6X'N 5GM9MJZ%T";Z!;Z;BAO,>GN90>1;G/L ZW:K$I6T!Q MUGN0FY+.P0).7NRM\A??6'EESY?,(1TP% ^Y@QQT)+J?.YK%W-"OL>X%UB%% M=]_&F@'@)6_AX[3J"9"?TW(.6,@?JK_S2+R /WNC7BZ;8%!\FPY*7!5?DT#W MLK'02GV\ODU7K@/O[V)&@PD7]2'#2(AQ5-(-CY^W5VS 645 *3*+SX-X/M(\\YN.\T!ML+Z T-=@QWI3Z&L*?4VAKRGT MU:-LSK*$.OQ4Y=A[CDFHN2,GA?[2#AFDA,*46/X8I]I^&K0#9"TU>JF3U1%A M [X?YO_"WGP\QV2+\S0Z^0&L"AJ*J3/6KNJ38%*JAN+[/36BN\OX.20X9KL> M+^(OQX4LG_(Z]K^6R\"T)92=G;T\3"ET;\G^&$E^!@\-34E^4Y+?E.0W)?D! MLR-)F_!K*G;/ 4;\OZ >0D"5_'P^/5B^3-F3Q12DA%![%Y- M[D7*WG9OV]D)3':EKK2E&]C)5_4,B*E]G0.R VU-(RBGV6UEJZ,/F Q+5:3; MMZ ',Q[47:XY! M1\8!2N7EKM9C)'8!4]B2' 7W?D&LP"^EF+UUO$*?$[3,HIMP*3O;[-8EE!K, MK0U6)^K=GMS?("]!"?_?0MEK2FYUD/_^7?/R;MY_^8_R,)]=W(T.H[@]W"\O M>BL/[X^ 7*PSE7OH-UA;)U$.#NRX7EHIP4Q_O*!H BH'IE$TG M'SBQK>+-@^(!Z:1\^^"\6E)<&32QZ0!*[$NOEE4!VE#H7J!3R<+A;+3LH%YK MHZ?*@E-EP3]29<&I=NYH!0FMZ 8@V'(>Z$+Y(D"W@7LYZC4Y'"T&)QJ&+W:[ MFKM#1T!0PN9FDCK&'EH"O&2Z6GPL+(1&0I@TLPRA7NZJ\-"0Y6)R.<&B^:VS8!LH9N'S. M&!(";.)4SS_5]DP("44L9OZSD 2X C'SI%4-H-@PA99)Y#.P8]WS@E,BOE._ ME*UK!%!<"N?.E"K(;GF%TAX]]%JO4+P],Z'V1C:P^5K!S=B#U[0!*%A#XWIR M#OW>J!PPMS.QU78 K6P;[UY(FP,/?X^'YC! [_>;]P3%[=1,O4XT@IZ01^EO M]X@QK?SXB,CFO='\-.D&2FZJH9FU)_"4!,V5-8O3>[K=*O+SVPA:V V4K-$^ M!"TDT'5)I^)M(<0J3MW@>,7T[P(M$5T[ OK[WC39Y8B^?_=ML]@3&VJ6LK'H MGW2X643'>Y/2 6=!,2+[O,\9W4T9H],#VZ:Y2=,[V$ 2A:9WL+^<7)XO[!WL M*6OG-+)V*O['OAJF)BRC;@(E*F,F134MP'8?I/\[IWV%Z[A&R6V+RXI$@ MN4<)HBQ;FXI/UPL82MBO#ZO?C@/CG)OJT14'L&4GIIWZ@Q("-!5Z#R1#MP_7\1W! M/DKV?@K5V@OTC"*\W9RHP4=F&;WQXN#,2\+D(ES23Z@I M(8MVH\OGAR&612%I;J3SD'HDS;;G.&D4Y3)I,'Y$XMT0 JD3!=WD-5/'U:#C M"VFHN!'$O''!N7&([(*WLG90@@+6$5P902OAFO0 ,XZHU5R]E!;4G(?/]LY)QH[Z98>G*'OH%&.GMJA=6](_M 57P5-Y6 MTCE&%OU L>A6(NY +]#)O\\ ,X_CBIL C,W:3UDQ:2F:JXRV4EP3 M^-2R)V5TN#=V3'GR6L\+.M/?H_V8D3(+09_BHDU-UK:!LQ6QDI"7*O;2^K+3] MUB5%I[1](&O2E+8_I>U/:?M6 IK2]F671 V30E4-H+@=9A)44>(V\E#,\=:Q MAF^;KWT47EV)O@^TQ/-L5'Y7AAS8]N;2(9\4;1P5& MJJ+VFC; (A;M12HTK&*: 2QMQ0JL\B./8 #YC$9J*'(X!GX)?J\SS"3)GQ\7 M@D%QZ(2:L3^"$J(^%#O/LN@W.1>K7\$LVDKF53$>3@7)<^@C\0Y#" 'E/%2G M>'6LA^+?)R_.EIZ?9H3:_,^4%0I.RF&AG$FJ>2K''\P")5I^M;LQHZ:.]V<6 MY(E?,;;P3TYT6W>/GE&<2;,"#I^!67]KH1XH 7;@SY)Q%\L"/8D8CF" K2;6 MLC@B!YA /A*ZS;\C>!G*LBUJ$,"6(6MAU(B!)@H4(^)%_ VJ#64L2Q%)PV=4 M7+*3B4?7"DHR3&N1Z0B$)D;*$A8[6\0/7H22Q7+_3BW_Q_5FZX6$<>)\[9&5 M=#&R[P;*%"-&!".^C3%:7\/#_@HU@?3OC.$*6YFIIX^4I7"[85G$&90Y(U:,T%'/CC#HCHZEJ9:D=.*3\HU/];PR:CF^*'N.G1E1"4RFTFH>\HO6ZB;C2['G0):: MO%&,)%6D)"49O]'%*RNNZ$Y76)I"!CE^JD)/H24E5<#FSG%9$ZH@EZ]%!*.L MAB+U[$V:CB_%WD,^)F0"$ZM&="[%TW,@92@12,Q:436\L:D3&38Y[/A<[RF6 MH:$+V"PH*L,N+9[%E6VJVO0TOI1[#F:THAJD#BC%ZD)2/4=MUZ-^C%6-S'/#?R_V&[>6W#R:7W][,2EQFB",S M>]K--FS8V6J/SXQPA&9>'!3?_ *GZ?)<=XH3DE:HI7\=**5_'&XJ'?3#BP27 MY32P7]0E.0VM YE7G:!R9*OH""_':6 !7)(S4KN]'.2D]"N'!/E?K_#S6S^O M7I.+HOCC((GBAW_]XY_'OF?E@^N;EOQV ! TT)7J M#%42R+(-7'UC%K@J,?G3;,MPX=$I5&+SIUF,4E4L:PI<38&K*7 U!:ZFP-44 MN)H"5U/@:MJ+3GM15WO1T\_4['G/VC%1<^0M40_/XGS[[ENS30_$UW&^C-V, M#<53#5OE+L>09C!K[U3#=JIA.]6PG6K8 HHG3S5LIQJVT^9PVARRYT&W!/EA ML:G81BC-PVD]\U MWSUAW#_]FI8S%"!AJAIA[VF]%*D)7=$F\A./;FY?/$H_LP^>UL=X9B?[WQR&^*?:2^&8RM9 ^"/;J K2';_6+=Q+'$4+G!U#<# MM.] MA"F%[F<6]<[\E(0^7;^5[QX*X*!X-S;B49 SU$RYRE"T4$5KC@"@;)>MM?Z( MCL'2X#;;".\0TE@9(1B4;;,U;X74#%=)@_D6_(2(EP^7,UD&Z3IMO36?902Y M-]2?*+IT5^)1@I2&6@#G.L>]BZ$6D#.4VM_CG1>EH4K?&R!0"LU;*WJ#DN%J ME]&-LE1KQ2!0ZL%;<[5!B7N[P7W/8A.H-!PB0"CUU=M8#A$]PZZ8%KOQ1MBM M4ZCEQG74N2@@'#[1IDW"5/9:)DH1WFUPA M!7-ED"<;&Y81-!2K+T*"V.$+&XNM4.5*)&>YKL7)AHYUA U6D6.Y#'UT3W%5 M%.1HP)QLY+A)RI"O 204^!Y%^?,>*B,M 3W%D+":HN%RA/,,\ OJ[D:87Y71 M&Q.#1B<;.3:@;3"K7LE'4UAR =3)1I1%Q RFZEYP@9Y25;!8 7>*L6(%.<.% MBC?;+$7D(=MNHQ E#WB9OG@$W=#50VU43%N.O\61/&/0XO35C,+A)D#\6_$B MMDK[&T#C<[RO7:6 F,$*V5>2AA?+PR,'"E9KFXS/^+XVG5K2!G/+V;'8.4%! MF-(5/%1M\:6@X[.]KWVHE*3I9' Z&01X,JBA3A)[UK9R':L;X/102[/CV@8I M]G\[\Z@V,2>'8L1-%O]UP=&8^Q1;BI[=.>&?!6\1L#[?/+&A9GYEK/+3+"=[ MYA4#0JEP0+T0U�G!"Z,/+9F9SM#C!WWH[]-J?>86!8]Z!K_RYR=[BDKJGD M7U'PB*^3)$,D824[TMTC'5=QH&C6%,:AXF#*4$L',F*(^^-&'9[*0T?3QH". M'FUTW$:>PQ2<:W7%HCBYJQA[]54+.3R4TTL[):U=O) 3YUY26K,CLSHRI[W/ MCAW?)^^--9+;YETM_HDZ^*WYFL^=9)&E2>K%['FTVTQA5 88Q_4F8F#5[)]A MT$KU=Z3P(P5,D^OX#E&Z@H\$-U[;'70D*+D0,-5/R#)H"LA\ .X[!!>\1$R. M+*4KW4J$R6'_VZ@ 9]\1E'R.@=2G!4>@:4?'&7"%R1*%:4;*K)

[J23GP-CKB!"7+$*8/TI&Y$-7_2<^-)VN/[!XQ4=/?SXLR79D7 M/2*R^:!2^K$Q 9/'.:"NC\U3B!K>SY[CFI(:QDGH_^Q%TB(" XX')@<6IF56 M< YB8M+1C+KR0L*Q72P+>N;IA9?2/_E^@:XU=:+V8/OPHFU:4_.E2GE:4XGL MS,NQG2TINK-GA@@KF)!S,YEYZ2Q=HUE \68_KTCYM"7[-2SQ;[9#)0U3IA38 M3"DQSGFX>YZE:SK!?D?!9ZILI!+]9G7>*#$U+^B>4:EZ;6:(D?Y >5B#\ _J M2FY$5I,H]:LY0XP$*"%LP*GTD"224S+$! MY\GA4I.$!X/=;$J-1",$@YU$TZ]E&QF#>%-*:@'(K)?PG2]+]*P#K>/^#).V?T6 MV?OGUCT \%FTRBJ5E8ZX 9\?\W)E*S.QU>^/R8!=^Q,==*[Z/)F,O*%+EQF4 M+7/'Z@_]L[I_!O?WU&Q^;8&99!PCPZ=FQ6T<+3PROV'0;;R:$^[%>X27C9@D]W*YH]T@0E# ?57E12@QJ.N5QTC!ZD^NB\AP+PF*^J:X M@JP4@P#.]9)D+0,!#>X%,%TWFZZ;G8K*R?*I'G'J1:.\ &[XC%B^QX=W[[Y7'"RJ&T")G-@+P80Z]_,EM^/JY>T(Y@]T MGGA$N7MQM:?Q0$H<,#6\]39M,GJ[#@5H,12J?C_W?%4<&/ )ATVM=J_ZT08) M+)1%;TA%K[[L(&'#4$*ZQ?'E*_(SMACLG\#B=#!4Y0(S:P=EL1Q%>&8L&5"0 M=*E:8K)A;_3Q6&<>_%7*4-WD9&+K/8E/S8W!WCNT%)L:_F0*MO4A,S4K3L [ MFE(7IM0%("K'_^=GE*3[,HCO^U8^X1 GXR.,>X KY%6_*0>2]:@URI^0QPY< MV=_"TI&]]WXR_HF5ZO3.IB\Z4>7++Z@\;D7<(5@&30'9_IHC6B_[RU-@Q/5V MI%D'+7KZPLO:MF$), 691[Q?%(A95+R5=8O2Q?+1>Y4%J2T[^;++QMIR YA& MB!77O K7+>8/_-X(.AG3I!]W<)>=YM]H/-E%F%USU=@YGB?U(((>RI9S)K]1.5<2/B%DNIW M]LKK+4[_B=)[Y.-5S&J5Y([S%2;%3PQ.%I,;&XDOO.KJV.S\HZCTV-K[Q1=< M'9!SP'2RDAMQ[FU#2D+NGM^CA-*.V)RZREA-;Y8*QTX$9;<+[/L97X=&/:-H MP1%@NE%/X5=M7820X\MWU$N$0II'V0W,@R#,.Z5.7%+DQARJX]RC?V=A$J:E M]9*?&K7L:'S!CA*L[\*2<7:!3-'6. KV*4'G;!DB+"'RGI%_4$M1+*Q# M/^-+?90(>P>.P!%ZL=9TDWB]D_'%/4KDO"T[1I%U&2&]\';)8EGLV!^)Q_;Q MO#+F8EGQ*H3)AY8]C"_E46+7K7@QNHC+748>O7G$=QGQUUYR?'4R2]*S_6,Y MPG6\AT['5X11(L)]L0>89ZY\83?_G6XO"A]%?KG?KI/Q563GPIC1(S MT]+MMH#2/4K#//GS#,6TIS2Q*Y[TEW?OCXLG';JR-6SK]L:<%8'B2W%&AO=$+[X5M/%LH? I8^@S MG9MC;_P+ ME*MJ MK37!D$ZW/NQ5&'NQ'[*"N]0&9?RNYN&PZSKF-W[9'W:N[??-QU+W(\W"PU#T M]\-HL\IP3KW>?1[G/$E0RIXMOPF]IS"B>++70OB=KV 14REFA(6$*, MCDGY M)]W0*CT MWF5/HRC[)Z%%M $Q;#.6W^7]2M4C2U*\043TQ*$,",8VPTH >^],0(X;KY=5 M^EHL:_A(W\%5P +97\AUJ>2\@H:A%J%?'L[EE>4J'R'L*+3JL#?Z%<3=:"[S M*7 4!BPEXY*]\$HGF\1ZR$%AU.-O94/D1,&1A]24J("!V!*=?JGD,'R=W\.8 MO]#_(6?>VMMXRFJ_ZA80C(]>@RI5>]7D#%E@63))9<$)BW9N @[6A-5J)ZM- M%JC 0)[>RY.-5@3EIZQ>@N9QG'G1@T7._2.TQ 2THA"9 7JKLC M>!FF'818Z\5UG<#!!5FC=A1A5D>_0!3^WQFS$KZ/,TK@/?)1^,Q,_1DU$LT+ MX.VZ<%VMK[T8K4D%EBQ^@^,5B^:5%U\.3)AO& F25]EJ)U)P\8&)L M*MPMDLE. NNZ;%TG@4EH+$\[E]MXHV?W@GRA;G'<^V MK.=96ND:2-*XC/*S7>V+4?*X55\C13X6+S$BR3K<2L)/1]]AQ*U[$5,9 SFB MT$T :H^$-.K4@ 2:A(J4(.W0P>5F//"/=!S3+8X]SZ53Z)(H2$$DR3:4'/5 M9/B[7\'/LH0N<$DR]_.2(HQ[\LLH4F@8X>W>3(V67IB"8_\D2'T_Q: = &-E MJ)XZ61T1II*:PPL5.%<;.[BNZ<7W$UT7@]M0"DWH95[_S=FRQRI.Y M=0<+Q\"N3_>Z2%!&$S Y%8?'[!V'A!^=%,6I9.Z7 M[UP5T7:2G(V%ZP_OFZ=#U;%FP>$+7LY\.MQL2<>;A?U[-914G M99A$! @H3*)5O]H+! ):W(OB'@4(;9@6'=5<594)TC6"$MV1ZUG=2U13XUY( ME<+(2KD(X*#LT,U$(2!@L$KNYD96%DSKT(_#Q/,NA!]JMELO42<:9BMC!7=> M&,ASNAI0KJ==+Y*64@=L]W4=4YNLQK:M9LYW40=&7P M>^H3BN=IK>7[E;4[#X!-^ KVLH<]ZR"NU\Y.,A23!$PDA[=URCTK3ZO/?T[E MQ$-Q<%1H#PO*^,KCPW,FKI>2WN1JQFIP$2KLO[E M2=9BF=<9TMM7@RZ@G!?U97\-2!ZG-A8[1:$K>G*&TA>$8D983!OO*&%W!&^I M:=FQ2K5,']D[:-M-<])VZ0C*R5)[WZ@EX>,\)89CYM)7TXWVZ+)S9E9 (249 M_W(=4VQ7=$N=/&(IWLUM[(#CN+Y]UETWAN$+L+7@/ERMT\7R%X&C&X'](>P-HC:N+#LG30CITN/H6B-YI:[32M&) \#TXP(]I>4#UOP, M_CIW:XHUL.#3@K!3_="+BK\K$DV?XP'U(=, MT3GQY]*5Z%<=]<([#ZFV/[#'$GC)VC8*8="IZZ/,\13$@!EMMT+%S^Q_GKP$ M_>W_ U!+ P04 " "2AGM8P#D'U02C ", 0D %0 &-W8V\M,C R,S$R M,S%?;&%B+GAM;.R]:X_D-I(H^GV!^Q]X?!:8-I#5=MN>&7O.[A[4JWL*6]U9 MIZILG[V#BX$JQG(D(15$0P&"0C M_NU_OVQC\D2S/$J3?__JP_MOOR(T6:5AE&S^_:M]L3[Y\:O__1__S[_\V_\X M.?F_9[?7)$Q7^RU-"K+*:%#0D#Q'Q2.Y3W>[("&?:99%<4S.LBC<4$(^?/O^ M]^^_??\C.3GY#T[B+,@92IH03NN[]Q^J!^\J@%_?Q]!?OAF__[^?IN]4BWP4F4Y$60 MK!HL(*/"^_#33S]]PY\RT#SZ4\[QK]-54/ QM_)%M!#PKY,*[ 1^.OGPWN._OM7 M>;3=Q4"/__:8T;7Z]7&6?0/XWR1T ]\>^/\)^/_P!^#_?Y8_7P)L,&]!!;XCV&7Z[97RWN MZ4M!DY"&%?] S*"&_%W<1H!P33I=M8C&8#1IUAZ3U?,J93)_]_V'[X3F_T_X MY:\7I:,Z31C;152\7B7K--MRHSM]R(LL6!45(2Z"H.2(]TV+34 _S=J\!MFJ M(L_^M(A?0GRS2IE'V14GL1AE@;[.TFTOYDHVTAY(?XT?8I54+9$RFJ?[;$7[ M?--JON!O&SK>@COFH!@FS$LT.?GY[JO_J%!)D(1$(!,)F_REPO___NV;YKW3 MR]CZ6O/(IA7(Q6) FKQR[CE=O=^D3]^$-(*Y]'OX@YL3-R7VCUH*Z?7WP4/C MFDJ)S:#S&XP+ZV C)KBCF85*9>R,Z+6DI?8<0Z_S\Z@(FQ'H54&WN9N4$K@W MJM(1P: N-:P/*G/ C*/: !;A:"BZ<\\H&L03CW%U0V;Q4!?@&=JW;UZN_]8 M@_%=3Y-D'\2W=)=FAP&7'@SW.ZM8/OS>,@S:=^\RH?_^ I8(8 Q%J-<0%VQ% M81#J Y7%91,'^I""PA-&11#Y%>$J6:49^]T97O!^D*^^1XGN6<_;G,[M/GPVU6(Z0'FM)E7*DG#1BNEASR8=410(!8 M%U#0M.,FS8L@_G^CG7$-I0;V0$>4["O5I 6)JRD*5JS*(G (0T):$U5:+A9F M5F.HP#S0D0.6U4Y$P"![$)D)N_L0T'-J GBLTXP&&E_1?HSSY54L5E]TT2?6>^"X'Q@':O51SY\/ON'5C/0^=@Q6GWPP^>S?W U YT/SI^1=$T^?/?N MX6M286%\]>CC[QU:\O6OO H8(H/D#]E_2F 6(0<8W>3/5 M<4L-'&;(KF&Z';,? "$%[4HN=%%[#4P$]/SJ\"N-X_],TN?DC@8Y"SK"JSS? M&_:TM/"8ZF$1HJTF&F D=3%RHU,;0#KY.V"1"HT(O/D5Z'R?930IQ+$?<'Y% M4.SU;D4'CJD^9A':VJ.&15(>$S,ZW2EQ2(U$!!;&N8V"PI66Z(E>!$50,F8X M3J &QSVI81+A\(B&"A;M;(:>&?VAC!H'#H$&E2KAG/7+SH.";E)#SO$ "OO$ M7X?A[J&_&@3QW-\!#Z:C?QFI8.=7@;MM$,=G^SQ*:*Z?;0Z@,%5 R7!;!5H@ M2"J@X$&G AR45+#SJ\#EEF8;-H%]RM+GXO$\W>Z"1.\---"8*F$4H*T:2E D M%3'PHE.5"H4('%(B85PC^!@E=\6VN,RR-#M/V02V@C-A'^-@HQ#8!0GW:H%= MG,-+!GH,M.L&-I;T%P\89I"LHB 69T3Y;YP,:>B0OP"E62\I7JW6V>D^C!B= MTZ*@N;C/KE$R$S".S?_'.NSN?N/JZ[#2E""P%IH=%K3K3(#$6#*42=9TNX7[2^GJ[W>/ 1N(Y;Z M6FZPBZ?/S!J14)/=#N( @%H,H^'[(_O%5#2K XF= MKU(RWDU2M< 0,U,*/DSIJ$8]. *>;HB*+6[:T8+U03\4S*LU1 )$UI$.)U8M M*6OJS*XGIXR)D#.NSD<>/$=:N:J8K->M\L/Y5ZW=MW?7K!7,[,E$$);E)194F347C?JCSJ\P0T4"3^N#-JF#]&>M& MILLO=\OKJXO3^\L+>CE]B0[#4@=X#[1#)X1240Z!<75&S4W7H0 8 M7$CB@.0O (JL0C+G%^DVB ZW7$R >$JC9UO6EBX4BIKHV+#JAP#&UA">UN6L MG7ZFBKNJ)D!$#=&RW=*0#A2.AFC8Z&J(R+$+13DE?Q' _FC(F:N&G'FE(6=. M&G+FAX:!"9 #T*3#MO*F.0:I?. C0U3$'M]C$8#0Q3D M-,]ID5O6SH= >(JA9E=6BC8$BD*H6.AFTSC0; UZGFCVD.;T>C3;=W?HJW#! M:+E]Y:2Z'5AL#=8PWU7D T!$?59RHE'K17TE;R[]+FCFHMUN0E3,!QS'$\/L MQ3IR7!KDCZ=)"/^Y_,<^>@IBQE)^6IP'6?8:)9M?@GBORYXYXB)&KWV$:P6T M+H@X,:X[9UV%8TB\0QO_0T)?D* @%07"22"[@$G$7,$?M$%']PY'D0J^'66_ MIVNRXUNZR#/^:@4EX/);NJ*,Q8>8?J&%^G*U&PKB_.\@2BL,,,#C1 -6AKI! M08E"&IP%85@+ZW7K:1Q#6@2Q<8(=(5(FB930(TOB$BS,(,LL-G^5/#&6T^R5 M\:^1M0V"9],J5F4;EI^CV&R7@>[-L0J$6R;R3.W [S74G%Z5@3HO^V&X13&7 M\?499USKNLGH+HC"RY<=37+*XH=E\4BSUDI#(Z,3)IXM]A!,-E$'-!3+=>:K MHV@E)BE1>9C'D1+\7FC\ DSQ&4@BAQ%\+49HUUK8O@\3)Z MDA8[OB0S9K.7ZXLHWZ5Y$'_*TOWN*EG%>[B[Q7YE=EA$R9Z&2[84Y[=%+2O? M$02Q\^)CAJ&;/!]"#3'#/IS=[KG\DA#AE!:DID5D8J2FMO N*)A\2-I)?C'#B^!R)>Q;@W&5A0\7K#^"Q8 M# ^YZ!T<=M"G;\PHF$M(NRCMM:,>_F@Z'])UE/##])_V41@D*]V&FIT[Q;)* MH"S(#I#XJHI6:#.D.[WJ),-B]V%)D6A#L^].!D7IMR M\=^KYU7*G?(']C_NF.$76"/E1;;G->.N$L;#)NO6%C5"SN^&'1@'[VL .Y[3 M+:^[JDHD6?E17*B$;1>(1 7./N,-H0.R3<.FLV^1LE\:@'T20G9+>L_[,KJG M8@,G*>)7]GR[BVG!XMH:,P?:,N4<2$N/B\>@((_!$R5)6I '2A-0U16C$24 M2;.G:$7?S^_Z^X^L#,RX)Q4XDI\?+\!N%@$,GF\&$6;>560.R+C(4D+ZL,?8 M85R]U5B#(>\X'O!AW'BL8;W9?W3FGKQ+TN2D!/X:/4(9-/Z)??QG,5((IXK7 MS[1X3$-@+R]@TM5=7=!"XQFK10#98#6@*$9KY*5;'8!#$P%.)'ADX^TG10,! MD]3R_.3LERM<[?^4IN%S%.O$:Q[CZ?Q?,X4 M*Q6,J>@AIB(ER1:WER]E MZBI&ZHF-&4NVCM\,J.AQ1ON3*F\( 5:KT)Q+#) MNQJ?5 2.'-8XA&43")G/D,"T9L>F^5Q!^;E\.'H_#*8X&,8HBGME,,!"R<8T@AV*"H_F=\ "71T8]_;!G9U?75_=7E'3K]_"5[A*C[[9\8BV_)V9%Y=CRP9Z#*N M.K@SFB32*<")AJ(^+CB2'MZYPDD8[Q8DW&]A <50R:HJU/,$Y6+8C)Q73QZ" M&$Z7D_R1TH*$04'A2?H01YOR&&$D%FTA V<+O47XN,$I(F ME+Q"(YEW:<:)IW4R<_6Z@K(3T9K$;(U'LZ\70+=<\TJNHGG;.R"^9H2>'Z/5 M(_O]*8U6#( ?863?(EH%8.L"FP>TF2?PU/V M6O:U8T&*/UIG3#HVQ#2AZZC(L[ZK(B)=D%*0E75])SZ4YZ-2FHYCK, M4YM''II=-325YAANLKO,E[-68RK'Q*T.TR$P?@4F-?NJVDMM2-2J2RI6'"SO MEL8!G :_"3(?3&N<5)7[3AU:7,Z6;QDER0F;3<0'VHD/A&[@W,MM=W'Z2NE9 M.3U9#=V(A&KP#N(<&+X! \L!6%E2*9J8<$LL4J%Y=,][C%QPS85-EQ.WT!ZV M$_@4A2R6=)L4M="8.WA& =J[%!(F3TB2:&#B-S MGZZ9L)[G:*I>G-.9JK+G2)+8)WY0:WS.O[G:[^C-$:I]RB<'?#TK;CW#8P+T MPKC=[-43$[2L).<_@& [=>[,>[LJJ#'7TG9DL:M\-4!9M&&V#<@!.\3V^_>&36)O2CA.\*G\VG3D!XUE5^=4 M6T.#@%Q@PRA&I\J&$AJOU(:!'4VIBG8TX,_]_('B^+.P;!BQ+YT]2958?=S09*576B,&YO:X59#VKK@6'&DS MW,*/8C>UQA =[F4<=.<]7IZ5DSRS&$GW%W5?$362'A=O)-,&NM!X=9I[>6L,J >F=).5*4(NYR]P%UXS$$I(U+;G.L8/VIP?@F&U-5?SH6KQ729M M.>B"<. %NYBG%+0TJWW*YWM42YD.A?OWW_AV_AYJG.Z+ MQS2+?F,@C)G%M]]^2_)'Y@KR_T4B+K:X'=Y8\AGYT/DA@9_(5C]8D!T#/V&"K"R"S&(&M[0(HH2&ET&6 ML DU/UVM]ML]K\EP0=?1*M*MI5P0\8S#72S93NQ8*";CRI8B^!*(I,(D[R1< M4B+C-VT;+R M,7U+2#BO)OU*0+@E'CQ).(Q/-"!O[3B+)'9XWE9FX7.4L"4= MY"!%7E$S!ETP/'O0L2Q;PR$,BBVHF1AF">TL,*E(HL\-CC)^@2:D$O]5O4+O M9H0AN?BC)OK]FGG&#,_T^SB>S'##67?R!?(5JO(-?KB''@CSI< M9Z(([!QBWA5!5OQS"SH@$II01!$]^1 3V0KLVX\ :="\..EE%*E/EP?L,V$& MIAR[.OAS9JR/+)V#9%PB'PRGO8_"%F_+C+E-M@[BF><;FMW![H_3)HP>V9?- M3)MX^OU-':8'6YYFUNR[H R?I!D1%,1."&$T"">"OE@9):MIJ[3>)"7OHH2$ M;+X+LIRPP$'L=^I3> AFR67,F[UY3*85V&5#,R*QQ=MC)"H$OXRG+8;-< 2T-T8CL^-L,)[LS?>6QV0H MD5DF-"-9-N>!>@Q#"\LOZB M>+3*Z?!O7^*843PR!LOBQ@3OAUG8@W^U;?BTJ!DNE&]K&%$,B\>*<,';<@%4 M"XUG(!8!9-O0@**8A9&7KO(LO]PMKZ\N3N\O+\C=/?O/Y\LO]W=D^9%]8 MNG&)/I6,9'.F>"HOENN2%>V4V(+!C)@4S+9#) D *2;J<*"(%_("*H_/HJ=6 M8^K#<=E2 =)'U:E(N4OM:]6K&F#_]5M^-N9?OUO\X:R>XN+LI/WM[\EUS#U_*F =N7-$G; I21C&4; MQ0$/SP*?754UB7\8BUWXCJ MS@$\1CF)"KHE&=TQEGAG!N8&"?LC*EY_EXNCVI <$/ES.+9>KB!Y !TQ^#V4 M?F@*88GKZ61+B\<4ZD0^,:6C]/W\IPRE (#Q% "A$QD&;L<;(<@+?4)1B M:E8^R_.3LU^NL.>Q:JD&\HA*")^YVEQQK>$Y"*W3<\+%/D[F*%SW<)D%$?&H MF1-GNE5WF73D*EC6/Q,4B$3"@[APN*"E5%$B_&A5[Y-Y4!],KIU)7*XO:!8] M\2T0MWV PQ?4OY*0?39_1:X!XE\!3\=O?HYR6@0\Y+\!^E["=>K]+R+5'R: M?;=A>%R4A!9DMR^^605Q3-(=Q#GHSF"@4$R: TE\:-^IS?/HTJH6).0VGE9Q M.JT\M1AX[3PM+&ER;L;4(KK1#!?,TT1\W[RIEXGW7@EWOQ+M0Q+LR+/A,+N. MR@SIT?>=K5MJQ^,?874IVE/NF2C+>L_OC*[3C JX^^"%YI:L ,+(7OE-#,6,#IY)6$Y+9S2A^IL*6FALQZH5H.L4 M.Z"(#DW#BTY[&'BU84;>E1C8 5H_0\5C#UR_*?#-M*HXIRN#8DL61E%]D M9!;M;5N+"8*M"8<6!DS>HETUX^K+.57[>)CDO^2'"@8/M0MIGUV7^]#T#!]=N)#',1^ 5I7'D< M-BMVU-:U-2->[9O! S*-\_.BW^9;4PH$UW81Y:5P-&R&AP" >G5 QVSHN(0,3[=?AP@FA*C/=Y>78J"[ MP:HLT,MOSO2QO)54V=<+ [3'YVS$^$"8>I3TIN)+0.HL<+_%>(N$!V&I(X\C M%J)@^\)>9NAPTC/"'"%]1H,<#D20AY8O0'=GTPAXKEI3X_HC99#L$$=78;2+ MMYKX'7B^["B#)7NZ25^ X@>/($''C-2+]05Q7M>WE_6SNE('7S/[$/KBBY0Q M8Y_XTKO%B/,BQ)_%1]]%!W+*IX\,!^N+7=4VS2^MOXCB/5O)]%R4=[#\L02- M0":;.$#QPCJ4/#G928GI\_+<3;A*D/]>HF?E4(Q>I+?I>+Y,5PG=>Z$N$_%W MJ=[EL$>'O@&=!],+=YOLF?L5; M7;P[&-01EN\S.M=Y%O!]A]$7SZ2)*_M%H1XN7GHL6GQ:K/1?I'BVG#?+T5F/ M>+*D/V]:D%Y$3U%(D["1B*YB]A^'GL\&5"]ZWEI%T_2^U>)A]\"U,&;IA5MC M+UIF59) [Q$W6,H:GH0EH+S>A_8&["=*MWRMOV,&1#. X6:(/!O]2J/-(Z0U MV*0=;.B7_?:!9LMUIRVP)=?6GPR>?0X56;;5OC10['88DQWMKLB0D@X1A""Z M%*3DWM9>IO*F'HB@'(BD'@@YM9>3?4[#JA9C2)GGV48)#ST9*'*5>M>A,&TL M]:3AOZ5K-Z)Z$?#:QDV;/CT-?(X]+=MD/:G8-G/66/+! 9S)4_S0%:YD ;]0 MPA0#[N?FHD8R.;T@"]AO?/14O/.*-H$=_**.A$^>TT,;GGG:3YC[=ALUQ1$7L25%'^%:S2E<$'':5+AS-J#; M.K(RWHK^[C?0WOT^"Y(\6($#O6$#^!CDE&]]RS":,>I/!D]%AXHL:VM?&BB* M.XS)C@Z7((3#$(G0@M2DQ.&/%B1R2FXBX1L)89U)LZ=HA=@![6C"\<^7E9]O MQU!,?=YF<4QU4,&FU+3I+6;;_'''Q7% OX62_XX2(XFQZ<-:-SY9?[I;7 M5Q>G]Y<7Y.Z>_>?SY9?[.[+\R/ZU//_//R^O+RYO[WY'+O_/SU?W_X4]8U9[ MYS?5UCD7V!BWV9 P9T,7<=ISGPD#:::SLZ28UU2'( "-_$4@(B\?:Y,21G2> M;G=I EWW#,DO"XX'+L\DC-+5J1!P79R>(UTGQ ;6B^37@0#&I)<&%O' IXGY MUG%/%2#.84\])U:-\227U6.R\VV*DQB-U[.7-+A14OBLP/GQ4%9 M4^+S C["*PE\=EL5WJB&J=AR$OE!O%-$(57R7FPBXH@-JJ)!0=/99R$D=7' MB("B2@X<==2JP2$[AG02)60ET#Q1LEM:L!F3AM7E!,O:3 V,N28SL=]>BZD@ MD=9@>E84:R\!W!PW\$-QU+TJC.IC1D%M@&H5Y: 'JA8>JPVJA2%5)U2B+-3O MB7JY'M_SZH">TQ$\/P[9N1YV$G +^;#<<7/Z.YI%:7B9A*:LOBOW9T$,30;F M.Y KN+\K@LS8H/(8_,^4:&/Q\56>[VEXL<\8XS=$^_T&?^1)]P<\+% M3+SU$*Z=@'- 1$K$.7/6-7V^%A+(1& 3@;X@G #<57\6 /@;?6,DA8?IY ME7*C^L#^QPT+?OEKM96_7-]2R!8SOEDP?-Z-G_.KA ET>)=N((WYS6R4L&!M M@P@VY_IC: MT9S/E/+?2%+7A*#YRXE$JN[^4DOM\4QYNOK'/LHC4YNW'OB>SI?*[^C 0[W;:R5 MF2]E0P@=R9=K\7<1/<3TCJX8)!PI'+#*<:#IG?/J-QBN:VXK09^<7!^.AZS1 M&])@21)QTE#WTQ^.&IFVV ?'UKQT#,(S3NP9G(EZYQIZ#H=SL/.FG$,OE@>% M18CNX2A9BB=/)-%QFYT$<*Z80T\ Y("-[ M1F?Q.A[0BHGGZ1Q9T]ALA4W2C A\9>SCA]L:*NK9_O4A8,)Z&;V8A!*>9^B0 M5-@>6UU;P%YF)U#]M#N9M\&&=VF-Y1F%U9N>/U/?39:NH\+0)%D&P#Q1 M?LAF^QQY]?1X^P9T'24\T?1I'X6PXV0=+VN#Y/DS_+V8;!6;][:UNT,*<8I/ M@I[JX\^6.Y[JO'RAV2K*M16R!]#Q;MUN%]HUC:NIQG2-OW-H_[3J2KGW,(I8DVSMI11!-H+/C"G5DX*0OL(>]$ M(8U2*PXK:P6*"EVPO"K2,G,'A07%7V+*)ALVD 7ZXJ.N!06N^F.? MF>U=)65CQF1SNBI8( !;P1:]&T((\4[O8+%;-WU[4\&Y_SN0364^%2B1BA2L M9=_]++HB?4UJ@J2AZ%.[J,G&@8_!&AR J/>8UH('-8ECW$T1F7M=3V8%R'*;:5=N,QVV"RD>Z;_ 6[5^6VL6S/'&\UR%XX/F=1G MO2&NVH937[+Q:&$.,7FRBF+*?&W3]OD^G2;&.,ZK/%F 3SQTVD7W1._!7VA/ M*HBB-%/]*C"^^F6DLX7.6QUY&A7U6Y3/.J)9/:))O4T/O\._>-9B)PWG7!'6 M193OTCR(/V7I?E>?C%"VK%^R^2HK,RM7VUT092"::A*9@"A2=#79<-2QU6B* M>)'51*SKXBJ(IFK03G 4EB\G&WC[H@FG%H1!L;"I('&TC:#J?)$N +SFJHG" ML**H8XU<19=\$H/2'&62:3&>3T7(*9QQ MN22NP[F,TJR*G'))'L0&.@7_YZB7 3>%^G^H5COX]/5 M"E),AJN !A34RX%640ZN"VKAD=K/V!A2M*$I47BVID(B%1;Z&8K1(JV8T40B M(87>&1,.&YX='C;4'?_2 ".7D]>RWZDIWX'$*RRO8<7Y.@VZ%?22 O$ JF:7 M"U9:R^04(JSP!6VI3J-E0;S(Q$+%#(&TT*?:98(N6+;J+5[)C+RJX"L-1[9TX?AXQ M49(-+X=4[C=4 P#[D/5989XE>?]0QZ%49#Q?V<5W)86CRF$64\T+ZBAR_MQ MM[!&#CU/S, ]0"! 9 I\3"0:4,)[7 AI/#P(N1,XSB2:(W[F@WO%QY:_G1%[O(>C M?WD:1R'OGNZ7 YAP6,O%,$]C C%2=BH5Y(A$CS""1*:(ELF=>@Q$[8Z32D': M$T.M2FQ:6)Z?G/URY4.7WT-)ZQN2RXPY='%<(](7$>]+!+LO<%]QNPV#72D@ M=A+NQZ)*BU>4AN5NA,Z,%T2FA;YXF41R&0;,M#99/A(^&"US5AEE2[0+*OY[ ME51YBENZHM$3G*QBOHJ?J&D.,_(X53-PHRCBF?,$ R';]@AR*(8^FE_5_,TI MD7<5S:]AUJK(DH8NG]?$F3/I&#"GC;XG._VXU .0U02.M) Y8)S?B@A6A=)Z M'7'P%BA.PLB+$2,"ZL+#@3/3\=?:KD+9KE8EE3*)@+@ &"*>QEE4N-C>8(QH MY^T/X]MT#[%-PEZD+XIOP?%IRE8(8YZ4)01/IMT.1ZZV(B%Z.&NZB"4@7GVS MD)N,0MOY:B^[W/BN)OV>L; ;,9]LJH_X9F-SH>2)%;JSZFJ>)<7Z8$<3\WH; MZ8X8A$K:($WP?0$PV2(O$=0]RE,'RV&8N. *J/Y4-2TA>0_,R,XX_E_Q_^38BO0[SGMT9\?H]4C)&/R*"PO6I!'Y@D?*$T:'\P M(SD!Z%^VQC9F7<\GIVMJ;%\S-C;Q:DFFG)NE+/FNLZLMDAP8\7)I&S$2CFXGIL<=5*^):R8%M;#-D!SR<[TPAE-K$# M)$^L2\F5JV'5=U5*;.]LRDVZ6HS,(H9GA5-5E>,T0S.6Z%LHJ&H:CF'%5544 M/2^TJF=YBJ*K"W5%P2/;?5H$L'F-P:O^Q%V.B\QU>5IIP]ZBC M7?+;B"W&Q1&>QPS3Q0=O)A 8.^E[:9[BS/4$O16,A+PS5P>Q',:X)OJ[="_W$X[*T0U8(?M_)OV4 )6A.M_K&/,GI.LR):1XP"S9?K"\IO M;*IR\:Z82-MA_02K=\30=%^ K@E5VS$F'P/1MW$E48-_ MAX(>UG;6*&DK9-CB*]')^8%\)07<7:UQ4JJ_GO3QT OS\+MB<'7R+N"'#3X' M!5R ?UVN_TSC\#ZM_GU77XS7>-N!M%!+^0P7_J#&3W]"6,5_AG)JN6<(U/A) MD0H?=!PHGA3I2?U;0Q0YWS_E0,@2>VGDAQ[LIJR0<0,%,ICDEU5Y#-U@]2" M:,Z]Q6S9L#,VCN'V9,]IOJUH+ BGLN#V6Q-"/R(]6N:JGVO&,#9,-.0%^Z&G6JY[FV\?"OY,QPZ"FB9A [H74Z^5/Y<)ETTQ M*$8\=)H=*S2_S5"6A(H\2'9W7-39/H\2"F4$O]"R*6OY)'3UDZA:7$")Z409K MJWJ?\CN7E[?E;V;Y9-=TFE9][S?U$;AT0 MF7Q#ZEBF^3%*@F0UP3ZSD9!WINH@MH/)&JCX9+I6-ON:<$WP;>TS]Q^'PWWF M=2VX+V9=Q1C+=5V;[SS=;M/D#JJ$6P(3'1)^=&P61Q4*JS%0XUX32_H@%\J9 M9B%3M.R5U/AP6!LH$$["F\BVEX0U*+]&#\'\2L@$]5WI8QJ'-///FFZR\D8) M%^TT"<4/E*ER3Q.S4_+*[EP%MQBCC8PO%NK&9V^SK4)=ZLJWDU$K[QFL51YX]4&,C)(CU+QLS0ES21$R-5 MAL6G-% /R;J&I,O\8-N2M*-T2ZO3<CN=0_CN*/89_O7AP#Z%ZU)5F/*L\019\2> MN\(CI&SODKYK*#&YOR8-L9.I_/*%9JLHUV^9VO'\L%:C4-K# M"RHD_",+>JYL!Q5X(%JBDAH7/6LS6KJZOA 7DY9HO&V4U#(->;YDKJ".MJ_3 M9'-/L^T%?=!E6_7@>!9E$T$V)!TLBOV8F>DH5@,..@0()RSDVA) 08\J>\IR MDT7)*MH%,=14K*5*2%Q+%9JD\FR+8G3>]VUL28S;BO!\"V*ZK0<_=P_[B=S: M/?1OFP$$A/^#TX%/04QY Q!H[K-B;HH?2$K"]@\2Y VOW7I8T>?RI2QYR?YX M9,-!;YG+NUROJ7;G<6XF<(MD>;%X M"'GCP]]:"((AHJCNM2 U6Z3BBP!C1'"&[#Z]^ S@@G6=9:KAYW_0YMUOV",? MXU.\67\YN?M[>][LN,[IR/>A16GXR\2X7#K6\"@] PD*0J%(][JL6S_' -P5 M059X-00/=!,E":^D9AT(_WWF556B_:)L@/XI2_<[AM&[[MI\++Q1CSQPJ"=S MX#W?__;\_2 !CQ>[UNR0BA_"&>*8\Q:::R?@;HX^M4SS):YIGO])'ZEVYJ,! MM>K>S$PUG6[WF=B\K?['7#63H#G*GH1U8NJJH%OK:6]W?,2,:E\A6PE55V2< M?&H_[KH+6X$OW;H I6ZRJ)S&;&>WK?>3)Q#WA,O+NY0$O'1 _B?TK&.X' MBV%^P#:\#PX:QA3LQS_\P!7LC]\M?O_3'WMHF=0*,0DI^N7_\Y1-AEG.)K+E M6IPQYVW(Q,^%7K4<\!"S'JY"M5(5-B2<_((;5ZK6824>:"''7)"RQ5R-C!Z0 M32#=._9_ 4D3"@7UV'_(0Y!'^=<@-;/2'W[D5OJ'Q>]__+W>2/4G8.7K4?@' M0V^CS6.Q7/^<4SX9+A^*($K@D$.UP?8QS9J>5[!UIFL,.0E%Q*-OXP>B=3IN M.#F< W1C^>V>L0.*)^GZA-$402&IJ$*T4^]7PPPF]7[C^[3';K/H[DZ.."Y[ M:);.(U"22@-#Y8%)Z+-4V=ZS/G)P*+&*8<[3G"?H>&=E$7*72^-E=@,-;X.X M_/=]L]#5C/D$=/'\R&2#(GN3T411?,I$7"LZP3T4I Z>.652D:X6J%5VC-E0 M2;[^27H!\BKU6 ,D+\>;PIO%8Y;N-X\DDI8=/AT2UJS9^96Z7/S.G.U=N=CI MM_#7$O%B!=M#7(?DDX8"]BK8F<5>"2A!:5$]A3FSHN9G"JJ?Z'**X(2@?OBP^/'[/HDHWU,$8E3ZIPBZ>!ZE"'1"&5,$ATA^I C47/WW(EH,US+; M!$GT&]\59D.0IW$4\G^(Z@IYU>&ZV#E#1/]&GJ>8PK0LH$NU_;FQPI Q(,'6K9;)PPZ4#A'"31L M='>;.2"O:%.#DK_"G+'/_W?T0P*N@OBFY:>K%629(!I MO5T,6?OUT"A68&-'44N[0B"[$@-Y!1QM$M[2)BFZPH"5D\GKEQG>\LI!D$*R^78E)&8I'BWC[2H\'3"D CP:/G210%74 M"5!X"QO]7=)9%.4Z#9+\2UJP4"8+0NA2N2P>:2;)Y>Z[!]+"4[91PLOJ.(@0 MBL*.X+1[20MH+0BGMB"<'G>%G"*12'KJ^Z<<"YUYXUHWW,](&-G71A#+=&#$ MP+-4!T%D>S2 HUB=E9_N#FB%X9T"V68!,XI7*F3TZ29X7Y3(YI5J%$\]\!B1 ML -LQL:>0FG/<[C9PBSYUZAX/-_G1;JEF37H=L3&#,1["=@.SIU0D0+V'KRI M-OKYXUSNWHP6842$7")V\_ M4EJE\:'7%U?WFK;X?P<\U/KB;D(=U!BC>_C>CX2'6NH8WO?!]TMWW6/E1HUO:C6NR7BZ))A4[+=E MO>IZ/J+03U/XQY;0[TT%\=+0,(%;5X3ZD<"Y$#2$1T4#)0^K,;4ED"M5*21V MGX3&DT55ZDF&Y$#+1]'$4OL)F%;9@511[[#8GJJRWL+3J>YX Z1R%.2$?*8O MT0HZ&*9_HVRA&++U6)SR61'7BWQ*T_ YBF/F$J^2@LD2/<3BXK$DMF7:ZTD# MSS\,$E9V!KT(H%C^ X5>=X*L;PMCKT1HI/#OA_B@(FY+>(L6'MWQ(J&M$GB MR)=)X02JI[/&)!+Z8%*\;(1M-7,(A'A81,ENZQ1("P+G>(>"!45Q70#"_OA, M VF[A(CUK+\-"5,Y7,1I*XL) TEY["PI*S53NCBL9>/9(?Z!HN';"5L5I%MZ M'[ST.,%CP,",,ZR"M.,++3A27&'A1S'; @8I@AM)I0O-(B2YBJA_=% MC^QA&U6 >ET$&I>^A]1:O]V#QKWIP/+.PB2";A X6Q1S, MS'24I@*''@6B8(9?JF-SJP9X?Y3'Z%"UP%ZHC\WIU/K#$$0-);_\Z&!Y/+&' MBP@ZQB:A?8^R X>Y8:-ANKT#I?PC?V#_XQ\: M?FFXT+D[+=3\']G",'QB#D6OA#@)$J8D6X#8RU6%-UQSQ X8?JC48[Y @U#. MBD;KUP_#2>&M,\;RW%V/! _[.,@.%R.K@3J/M7:9?%RXT2_7I"))&"52$N5_ MM\F2BJXW2Z+CC,C<;G"2 _I"KY?K\W0++''CNJ4Q-%?FO0QXWNXAR&EX$[RZ M5#H>2Q3W^/[XX3@\S3^<(MKA_K$LJTO_GW ,J/==$WTCZG\FB^IPUG\-=Z2#^W M[^?9JHGVH8#9UZ*WH.T.%\[H2+TN>O*GJ#Y0H9 '%KFM(^P#Q3=,'B$-K^-U MP\PNJWD\*UGL<1-Z,#G$6]$CAZ!U0WH@+9S;TJ.8[5XA%N2DDE M@8F'PSM3ARI0>2%"Z3CF,LH_V6O" MUFU4^HLD/.>WG#1V@4SS3A(A3)=F%*L6SD:V0$>*21$/U7-?5+H1<$_ M!72<#GJ@>Z66?3(K0D,Y"2+3\'06F$YDWXSR;K_;Q3S)%<30UN=CG#Y?QD[= MBMU0$4_#]A"M=1S6 0_G/*PS8]UM-0E5/JD$_>.AA].:D?+G@'8EG,QU8VK6 MS75W=-QN:GU$/&RFYH*+UDO-G3EU:S' 7Y"6SDHD?)H81DK[MLSR"WV6FH%F M:<+^7-%Z;?0(IQ3RJT2&X9V;[?W8)J&,V$!\NH%I=1P?3Q:G1?E4?'?K)VQW M4.R?GZ%<\;K&3:O9O&!+ZR##OI@V0GC;O#8-Z3=I)L;Y< JZ;\U0;#,+(]WJ M,MTB+K)O@CQ4 F\!5F_PZY[4$8?J#3B5N_U#3O^Q9\Q=/CFMS'3@F*LQLPCM M%9@:%FG596)&$=)5X(0^X6\>'G)OO>&JA_='=\RW677 7FB/?450JX] \,L- MCQ#'!VLX"_(H7ZZE62*-H]6K^/\VTW!%QK.3?N+)1N.&B6)!?5CKZ!]'AJF] M05\0@4K^4O[7GVS"-*+N,KH+,@_R!3_G=+F^S(MH&Q0TU\A\"(1G/6IV92MI M0Z!8@XJ%CBHP(%"$&LQCE>\C#ZW L,^W)#D;QI!;F-O484;!/+MB%Z5]4D4/ MCW0NQ<:0JJ-B@X)G&0[!U@#AZDE@)>,B'QE.,QIMDO-]EM%DU3[)D(3\G['H MUN)F3"/H(1XK'CL(K8/&0XGA'#T>QVWWB*Z@1RJ"[0,$D-J2:?ILX,<:F55) M$'\7%W)S[#_0S_ IB&$!Z#AANN'B[M\Z"W>X>6M%1-NY=>1,O6W+L\KPAX3N M]P0[A<1\HY8VZ+A&QYQ&2*L;<.5",K^E*\K8>XBID$TS'(ZX>$;72SC9Z)P0 M48RN!V?=RD. *]W6K-!)@^_QRF^,Y+6D60V/W-DG#?B<+;JG-%* M&46[E1+&1U2$?+0""<1O996]!GETWH,)8+-D/#>IUV+01.Z'(_=_AV&&4 3/+["+*=VD>Q,OU=9IL MKJ,G&HH^QXXQYB!2B/'G"-%;L>D .CAQZV!&E:=5!2G"UD45,=CR W(GG%[9 MR]MCVYYP0+C8,1?;AP;?G](T?(YBJ!)]V+3N_M:,$1JZ%YY[K$/ > M6\QPH8[2WD3LICA,-U9HI/8D=@'J]B-Z4+SV(C:>%/WTY%N_TM6CG=!TR'ZG M?'M/N%"L_B"]!2OW)$4NQ!^['2.,'Y-8V77<=0[3@7O0S]YI!E/#XO:Q=W7U M50][K^>O(3)YT,&^S-G>TE6Z22+WL]@.>.@;#7:A%'L+>B3,[00;5]H=! G1 MZT-D8^7,&D3L+8(HS6XH^_\A$R9FDUVTCE:B5T+XM[T(6B]HOLJBG2+\&4X& M<\M@F,CMK8-^-)"V$(8PJ=#9-J['\]I$$D/'D*#LQQ9L^:&S8RS;[E:/--S' M=+G6[GK\G-/U/KZ.UFRR?HBUM1+'DT-:^$TP!/7*< 0MO*7C:*8'K2WS\JWB MYJAXKVK'C.SYNTG,7HZU!IU^A"J*T*BRHEENDY[*VZ1$T"5 F/R%D_; UQU[ M4*0[I&'S_9^P(W^FUL%FD]$--Z6Z1:?1+?;$16VOYR[<01,].R)6JSQ7SE0N M3,(%C:SBYKFMT&$I,$90V>BZ0I1GUQQLD ^Q)!K#HS2-Q6*9I> M%'#JTPQ@T:B[VIM@_DR;QY?=KSMAC9S5O9DO:4'SZK!^V?(FV33G]=V-> !% M'RQZ\$"HS;LW.61;'\BO4?DKF@O"J2Y(<[FEIBS=;_'9'1QS>+RYLB;?R3GG MUVO$K9QEHI#4;6X?1Q+/+TPQ%+)C&$,/Q3.,9]AR?TL0K>ZOL9A6Y1(\#!&. M,# MI] :I##=/Q2PQBXS-=Z$#?6EHR_,EGAMB:)GK.] P8>PP%E0=1A@14>> M]AWY,ZJL=*>NH>*?X1Y)Z&/D_E4WCJZ2FRS=L)')V]N+O]&0A2*G8B/B+(IC M&MIW R9^ =+^P%&&J=XQF)0ZWA["$<3HEIT('O9QD,G]*F#VRMK[V;_!>7P6 M^Y>;9N2!OT#'?[[3;(7L%!2SU2F';%8K^6Z9>; M4C*D1A$ES<,^CZ'9SAE\6=.+:,M=+*<+FIY>S1QU*=,?6QXMIQQ%&6]D5HU1 MH>DV+X'GCR$VL61U5>U3ENYW^56RBO-VL#_C*7OAM4AR:D>E#RP?_U%ESMOYS)(/N?GGP:]5W0*B_& M=^[B^A=J88R"'_:=FB3^N"^8IV.+Q*R(?N,^Z_)E1Y/<[=C7M*_ ]PA3#I7* M54Q!']6'3"? "+-:$/$F(K^*E._RU_/X/W;'2,-?LW4FI648EFQX"S'Y@;Q89S;J^ MS6%A.:S\^#$&2= D-5%1%[<>@#)F@^RW1-FGM=_11D;VG%PK3LQ:@5P/&S@\ M3W.W[F*=XVKF<_J?H>U##7[H,' #]N7IG4AX_K@E0$_3/OZ<:AM64A,@%B,;0+7GGUM/*;XP8I5V:<-_"CY3)(Q9Y4_=* MBJ!J?JLQ8>-09DC/:$+74=]C^@,H^N [!@^$9E'1EQSVPF(8O^9HNF4+C;^H M=R_>E92_]MM7'&-L=EGZ%.75J0G9,Y"0KFF6T1#^R5P'I]\*5'Y^?_>^BD_2 MQ!M7TQ4@;M10IY!AW JU&Q2Q12$R02Q05Y>*TA MO)Y%IQZ6O!0ZJX+JPGU^6A19],"CB;3<%3F' M8Z<96XZC'!.*%NML&%D([8-_I9F9-., M6T8WZ,U+#EK''HKLEH7L2P3Q>-4@<5LGJWI1P#E4-8!%4WO@,J?8-7H/STE. M(GOKSL!AFV08!\F( Z!ZG/)F>5'[+DB)?J()[&[PN^S;*(GR0O17*7=E'6Y6 MC2:)5L)LDJ&0BI:-HH=9IFP"QET+DZW@2H,\E4%.;"->**I!M5[)X@CQ3KRZ M8\<8''ZQ8UFW3Q"7J$K*HIQ8>Q0JXCZM_HXX/.U$ZC"%\65%6&63:7@CSLJ> M/@=9>%\UU7^2Q#O12NL/-]OQ6\]MUZF>8D/Z[XIATN39IK@#=C9I\E$ M,">EX#4G#_ >4KZ(\#LX*@>\Z-\!.1A.84C+Z[79*8@[)=3&C8L-D?4CZHWSF<(VUUS MD9R,3+#C8RJJ;\.M3#,V!QO*XD)-SLU^[7O/4_\%M3& M<93=52?:60=11IY84,4?IV6(&!3\+&T(YVK9SYNL*D4+OT:0,4_@X S'.VZK M7_7-Y^9FM+25J5H(#R2$WMYW@-B*QKX]J/C0TK?6C&(U3T?0BRNJZZ?"\P5)V-?B?X#B[X*LJ'XA!;.'/%B5$1"0![O8 M\4;:[WG+#X"*^%67*.'9Y%8AT> AW3-[BJ&\Z!/LZX8_#5^\$%(" M4M%LET4YDVR?<9#RA>S=S%P#?@:V5<-=9+"A8I)T./AA7PB$,&7B $*^CPNH M(\UYYHVW=@*-_U#?)&80LI!?W4@#\A7#6\->(C^#SXCS8P'BB!T@2>,EO52< M&^CW7O2FRN-UM+645]>D:)5JD(^<^-%#^8AC$+;&H+'3R&$,YEF4UR6']SDS M[3POC\_DIR]1KEN(F'$0E](NPK16R28$G 6PG:.N]I4@Y"\ I \"YU$HP2W=,^'0 <]PI6M'1\6HY&SDQ_-_2=7[%;.) #KJ%_T<)/LU6T+QM=_/2508OJT>%NDKVYBO MO[<.?KOZQCW+>%L6P5-%"X\6<%@'DZ%,# MBA*'&GE1S @"FDC@7BQ/5&+ GQFEQB6+ YY?*J44RJ9<+21OU$S!E9/"+4B% M>M2%T0W-5K^R57MVGF:[5!3YT4]F)FBDZV1M>RZTL MRM^?,(E@6R5E_\@(#!VG;>05RXC'C#[')2UDTF#S]HCDW>WE^=='"*CRK)"" M*?:O)I!B__CK\CFA6?X8[121M^+Y_/:L91+,MO-PUD!'\_;.YZ]ACAQ\Q5OW/( YHG 87- _B5:J?JC6 2%.SD>UZ M*E9"X4V]!G:Z4VVGEWVR(14!4E) FL3ZR.',,M9B'\)J^&@;NES_DHKB$2P, MH7F1EXO%T'UEZD3,J[1 #_$MN0('2KXD$)Q9=!!G[4S-.O2C@F?, 064; M[H&.8KB]^>NH*!Q43)."O2F6+7)!&MV53/?AE0AJZ'8Z7G*%<3[2>)QA:K=B M@V=8N,-EW"RGRWR;YE'.I_MRZ7[#6"L8ZQ?!ZTV6KI@#8E_C/-@%*R:C>E=R M)$FTS=Y)AD+:'1Y%#_/8R@2,*P\_[VI@LBJAX7P+"0.HR27>RN]LL]>25+R7 MA-*+R0[>C'?\Y1@#4U$E)5E2TB4R8<(I\U*IC#9IB).*NA^Q^7F3\SM/DSP* MRS8)]W#&6A0W_F");]Q(X,?A?4151=\N^*@QMSN#^DA;H@$M/"4J1"*#?-%I M H%/MU"J2URYE(7#!+,8 =S].$U"^,\E6^4^!;'E4H0) <\0[&+( MIJ"'1C$&&SO=>D=POP8NGO$_)!POCA[=,@7/HE5!0[5@ZE^5*?II2.*IY11# M(2ON&'HHJCV>X3[*/\6&TGB/2K-R@Y[FT#=EQY8LA5&[C1B(/M4N2,NIZL%Q MO*J-GZYF-1B\.KY P9^?#ZRC8U/M'^0IY 'JN*UT^>"):./.^I,-SF& ,)HP M6BPQ$>=*S[OHN-T%:>B1VCD?_M8.4LKW('OJJI;TGJU?D]7K?7/;_1.;1J[3 M/!=]>.^#%\UH]Z* 9R<#!)6MH0 9FO%U7+ M9$8*>>4Y7N@OM(#SP%SP527XAB$CU\\[=$K%>9!EKU&R@1J"U.#W3$BXDY1= MG,/91X^!-JW86%)'ZJV9(H#,AT#D12[U18CF,:+A8L$KZ]Z6 6,E_ M&*NV&A:!V!'CLP><7H$+)E4<]L"HD&"U HA M161*?8& &NH7!V ^[%D3BO)*!NQ'7F4K)V$:QT&&UO2CK_@7)J%Q8].;+(6R M0Z_\T!%S!F#^.U[&[/6>O=:P;^J$B1>[]A!,CF4=T%!B6V>^NM>+2\Q%>; , M%GHU]H( MA>[K%H)@4-CB0O,C+2]1#<+YS*?N&HFG !?<&@$RMTX7C-"[HU5#,S &.M(6SL-VL('>3\ M&F%A1=5]H88G)8(G)XGFNZ(/-/,CH>NAVG@X=Y3-Y2L^46 MNNMHJO)(SW#JM'28JRJTU ]FK\UR\&9%$2;V'*T"#W^[TIX[3Q&_:-=^#Q[A M?%5+<2W^78^7);!\V<_!2[3=;[7?]N YSM=5,EE]W];#V;^PXNV*&L8*^)%S1?91%OD;A_E2T"2/'F)Z MF>RWY8WDX2/H2M]KK>XW2#UUWXVXKQ;2A_N^=G29%]&6;^#7%O5$CW( Y)1F M].4J"?>0'Z2YL8"Q'A9I'6UCOEY-ZP#Q#G^8.3(=%M,W.^(T24.45\G%.M[1 M4T .?@P%_QA$&3_H?$'A-#,?K,^T>$Q#1:+ "0-)V=T$J57>##Y_,LF%G^X- M'.AGS+&(A$8$WA2)B=Y*HSQ#X8CCG>)TSTTX(?BD/,:S$A;U.6*E86BD"J?U MQ'%0:*,J7FK<BX.V..@@B;Y$:P%'V2:W\*%O5"R2I;V^E-$?;8KC@H6D/.X"U0ID1YE?B5QYZBA2C4@$)BE1YU"F>@E1 M^\ZFGF;=EY)W]H8JN)W^\[+\@TDAJ=U(T6M='$@';U$QBF';!15:KTG7,*T^ M\6DU79.LHDCRLA$OUI)C6O&;-;@41D@5=$N*I"8Y7VMWPZ7/-S,0D[JVZD:K MN")Q^;*B-*1APZ/;(-FI>./07 4V^#(;"9_ZXPI^/$'X&%Z8J;C&$@.>.JU/THC^V_^[*5&Y! MYZEJ9_3/XZ1,P]#//YEKA8RZOE_78;U,-FS]1J$1-/-0:7::A)_+SGTYE'?5 MK\L'$$&[OC]07.GZ?D\*\R_B![*HN*==TR$2(<(I\7V\FA:O2WS41?YY%O%W M?4RS6[I*-TGT&P_IGYB[ &=PRDL0*X?#$1-+)7L)UNBA$QIB[8@>_-GF"#:$ M(>]JE,/>7U:2$UU"HYIB.5-$"8//T3I!C)*[0H:2#T1")PT^.15%P%$+04PB M([1BSB09I2\9%/P;XAZL@4,*19G[E&0+A2H&L3Z5.(@"WN&8 8+*QU]ZH*,< M<.G-7S=6XQ2J5'9#8T$:*I-E@D;K[>F*N>9]#+$E"R-9Q/Q;($[N+*&1\@45 M[2IXP7[-B/6B@*>W P25];8'.HK>]N:O>]*DH4!D$K":XD1(147TE<#56\[1 M:9Y3K5ZV(/#T3L&HK%?28Q2]Z;R_>Z61?WL!XL,W;VEWK=B/0;:A9E4P(V)K MB(M87<4Q82'JDYTM514GH\L1R$MR_2NL6J^9 MPSM[%9O5_(?N/7/E6;^)*&,=(YUT8)I#IY.013RB.B'_RO:&93LM3IU(GY4E(# 7"[/,51'T*QC..9;6@11#.TLD[VF1H$!#LEI MFIBN7: *:/[4KYX+18X-0'E/509[U-SMV3[^N_V;JZ"0OKB>X?I[=T'F_]HZ M'A1ELN*_S_*E[VCV%*UH;O_:.DBT%L\FQJ7.S2JP^;^\B0]%&V$!/(L&? Z2 M_3I8%7O8*K*K@1$<21<<1*@5P@ [OU98F5%J.6.[LI+KSG?48^2 M@B8!TQR]*MLPD/3939!:J)KMPI<_ZCV(VP:I/'I1HQVWY"7-HTT"+4K9 MF_JXUH^2 M,/?1EG&U7/-.=&N:+=>?TC1<9B6;AM+X3IAXNQD]!).W,QS04/8SG/GJ9G(Y M)F33*ESX&[!)FE7JZ$5Q?(N,QO+XCKC>ZJ.^1+X3HH\Z:;SZ[:B57A3*KSC, M:+A\HAEC71TR.\ CZI]-B);.Z8!Q],S,35>W&GB2,@0"&+[,MPUOI\5-RL+A MJZ2/0BF1O- J@S@:U5)@8.N7EB6CD@4%X6APC-(AUG1P<G'7/09:XH*R\VBG? M3X8_) +D+YP$0A.9\WV6T63UJNGJU7Z,TT)&Q6+5049^-GL#F>[+NRO($F3R M]%U.5^\WZ=,WJ_(%XAM7_VJ^,\TQGN&9;QG6N,]"QZ#;<0^\-$^[*"]#F7H>1TE] JZ MC>NRXC8LQ!T+-X%:FQ)F%)Q]!Q>>%"Y$NQ0 5,)Q/= X@]#8NJ-3$#0M,'QJ MI-R+ W=G0?)W$HC-+.2Z+,TRN]Q3TR@!>C0F7BMZ"<(H+PFEROUM3)0W9(Z9A^I52 M:P:!R<]Y;IBTS?CNZ*A%U'J)>%!!S0D7JWQ:#^94M=/ZZ>M4L8*NI%')CV1Y M61!2D;%0UKVU86"5('(2I"DM9 1'+!GDP)XM2M4$.GA%JL3P$,;_) MES]26I 03JS $Z (-5++-^3OH4EJ6>-E#5O&HCRN>"?AY=%%J2U>^X77=R/O M&GSR'!6/$0-@FOI*V7(JS:J? "&!^I4Q2<5%0\;EZG7%D*(UB=-D0[.OT6H- M#1GK"DDV4HY69OF.7$'7UKAFD$R"_RI$E#3#@RI^C2#Y%UJH_9(+ G+5/J,8 MG6I]2FB\*GT&=KIW*ID# OG)Z7H=Q1$_3XIM&8.%D6R>9@S MVVL>;F-X,P^K!#',PS*X3_-PEZ^Q\W#*"U?^]SP\:*Q5\["H!(KM;8;+)/CW M;A[NRO(I2_/="! U^ MNZ2B0I2Z?%S;_$D(G- -5/0W6N?D5W-;]B4D^*@M]HC2\3(XN)7L%1%@! MOK!W19 5QQ9WN:/)&'D]\L*_0A^AY7JM3;[WI>*[)^X(W-\7UR0\]L8'/([R MQYS62:!O&5F:1MK]'?S*^ MFV]7Y/[VV]#PV( /F71;!K3-^CRC851 =7^V-"@)OB*?W)A(^DH:2 \%"G/& M-5]H;I8PLJ]E'&$ZUJ&!Q3-$(_.RM2D!44S*P$E'J$QR2D)72GW79#1 M&Q:3YG=%NOJ[H9*[&A"KD+N)[::.NPH*H8R[GHWN81J )3L )CE '[F,N^CL M>QL\FXJW=X#02K9KV)4*M1] X&U9:%CI?/$D0,KSNS+(GDLMH(]=-7Z_Y7LO M%F^D@T2L%Z]GO%4LO@N&T#KRZGH)/(-'XFV1+!^_"X/TV77,UA_\$&#^ M3ZWFH/.114>M"3_O="'JM>7XI0K0@^"TP[8R,KU&/3RI8T,?DWIT6:+FB6\M MV20L@3Q0C!:[2J7@$+@*(;%@6J!P,.0%NQ//][#3R7O/<] C!2]%%JR*7Z/B M\7S/7.F69E?)399NF-AYV:<'T@*;)/J-AJ=)*)KZY5".@X874;Z*TWR?*>]8 M'.4->,'2$09*#K(F)(_:QF=R.;K' VLH2%1%37-[$CRD^Z+N%975[^%GXT7# MR9Q7?6$_P:DF!K(),GY::E5RGHL'JY+Y'$KU[4K^L0XWS3*JU4L(O(54KUF0 MJX14;X)\IQC:YF6$O:UL?9H3\;X%D;[0$=- JF%15"BQP'KD4 YKEQ@!_3)R M0W63*\E 'UYK0VO;F4^F9:K4HC22*>JV]-!Q=5T6&[1'>JZHSF(&]4O7C;5: MWIRVFXL\:_1]B@HT@T)28W;- <\C*] )Y1@48J>*W;E3%&R,'44 MV%E5V\K"_PC,EHHL TM)COE+N/$B0_!![U8T";(HU=1RT\#A%'4S,EU5=U," MS5[FS<"%XO*Y #E>NP:;,I0,_)SD.[J*UA%;)*B""@LLDE+8F*\50P6,&;/I$X?71-W'F2Q9>6W:"X#F) (!D=,>(P_FDM2B5 M$<2D_*P0H*WB?<@\+8O4 E) XNH]N7]D\ T,G'39ES3^NXQ\2?!"?_(7(5Z4$'OHF1SFN=,5AK>!R^:C:-!E/ V$$<(+N\R#B"# MLA4YF$_%45RA[;QDP'EK82S;1TF/5 0)HXA>(F'R4R+MV8BE M]6KLRKK/1@/W.\+K.">66S@>!2DJ8>X986+,H+-L['(20$CWQ" M1PRC0ZBA_?(&!VQI- B.$6059&G^E=%PUU#Y I\LWR::9NNF1L-L]#-$'COC M$]OQ%UI (_*J29"K'!TTCVQ:(Y+1L@]P_+)O)7/J!F&TJ"9]*)LD(1EG_X7? MT[^;_+H(@&$3&1VI<,M(Z4"*VEWSBE;D71P%#"LJ7K]&+HZND.JZXJV30=&L MI_H202RX/DC<5FGV7A1PBK@/8%%OD@=+^IJ0*N%UC)GO3)25NX.J Q[SO MZ4/.F5/9J1D>::YS$:*>Y$S >+.;G:NNXTM%"CD2R>:G((HQT\4#)"A1",>Z.[D,' 3<1U2T#S+C(/0)%+NOJL \#2LRZ:L0\U3%"TY?'UWOQ ^O!\W"J]I MD-/'- ZOMKN,K5I $]6'()TP$#7"+DA+1?3@.#ICXZ>K1!4&D5$\42NM>[RV M7%QU0<13,G>Q9%VS8Z&HG"M;?:>Q:U]VQ;4"FB['VI \5#[MY5DSAE]*9[JH M:E0XVX7;ND'E5R;F*/)'I+TC]!FY0\CL6Y,#D%FV;0S\"@9WSS(MNO@)/FL)QI1C-BH.9R;8(<)&YUX%A96C,_RII! M%08<&VB.'LY0,<+!IL9+-,GM(]T.:K"+BB ^3[?;J.!+'>4NCP(*:W]4RW"S M'=H!0=S]U/!B.-*P$BADU>"0=%_P&W=1LD';QW25I 0D$N2Q"KAU[8I-12L: M7B5W-'N*5KJS/"Z(B.7=G,5J57NS8J&> 7!E3W& I#SZGXO>1XV=:-PDV7&Z M\%,N*"-N_0\6NS4)2"?JB4"'GTH"N(&3'"=J9L V"%YHI&)5CH7DYRC!3Y>! M;A$=;R+F9M,&JF+EPM&[;;%U$7S85-.)H=Y&.X1&WCA3LV/LGRVA'+/[ M\]/-/M!7@#@ 0)IWE6S6\VOKZ?R5-16O[QXKN#LG '34NZ7+'4\#L)F([XOH M/ZH&$.GC&MFN/[(2:OZ/;6!#T7U'))HJX*-^_'N&L5S?/ 8YS74%N[HP2)]< MQVS]M0\!YO_0:@ZZQV 9&%FNB0 \8M$JF1]]L2H5E ??6%.&F_,@#B[]4:P/8EBE>/]/B,0V;H+_[ M*Z5?@BW5%9@:10ZKD,SX(6C*S0RGA5"49BRSRDK< GE! !2M"):.=VTE+!L" MCFZZB5%IGQEZ=OUR8<=!@XX8W\!*.+^@MVD>9%&1W@6[Z(*>/^DG0PL"TL3H M)$8]21JAYY\P'=CI;H,!#@DIJ;#(W?O3]S?OK][#C^?O?_'D)*8R\W9M.85I M0_(L"]H1QYH)O48]>>G"DGM&]-J7\Y:?HR1EEO!ZE124#5FQ?$YHEC]&NQO* M!B\I@@T]>_W"OC'<34OYG4L!HAFF$?3P%'3T(,BZ.Y@8BEJ/Y%9Q_TP&)179 M!:D)DX8R%,,^0!!@1TE P57CYMW+=15^#C*4MO(65=W'4T4> 308#(63-5@'Z,F?R&%TRZ2GY]C%:/\D'$S_N\.*,00\14,\^[ MXR)% 7V%JV,$5T2\"*(?A\IZ6Z)6%@3-ST"D?F$=3Q:Q[/E=Q2L?RX3Y=,P8*"GB;AYX MT=C_ M59?'3O^QI^%>7;UH"!54]S)$X -'TX<$MLOISZO)^60E-:@,FPIZ_)[DMJ0H MBOK55Y:#DC"N,YI@"$IKK2B1^Y24M'C)_(I:>5N;5]$O"1[%8.8L)@5]!:R<$DH3'E#$Z',4<*F',KK M=P(ZS]G]+T)?>!>/G,3A+ MD2,QHP<])FIQD#3GFN 0]%I^$:%<-)Q?^HA1> MD"+7I?",VHE$CE3T,!V4%Q_^&)X*FB*E21$E+,H3D2!3_=S=2_7#1_)00X2L MO5,?9#S/U)]+Q=[/&IJ:,*74:"$L\D/I/>7*"5Z$Y9,F$%LF01H:"R_]T 3R M-KM/.F>#7-O%\$VV-#\+MVS0.Z7(-[K]B0<\!!K7+H*U:IT M:4/"J7?IQE6W,A/#(Q+B@I2H1. N",=&5CZVQ-QPH[JC11'S"X^E/>F&PX2! MJ'!V05JJI@?'43(;/XI.GA4&:5 6E=/&U:HKGHVH^X#+Y= A91>&/+$1Q$V' MROSLE?UCE^9!_"E+][N\;HVGG@%,11%F>SN>ML\\P++ES/1J%"N<53958,8) M$4%);FJIB=G\*,3>&H#S.,CS:!V530^Z%]^F>\S&;1O"ENMHV_HT0W,#.HG;NQ M&8$3)N)M)7?!6E>6[&@X]Y9<^7)-C^@3/O\D$;5AJI[KY?_,\;0N<)CGS?^D MT;1[&'/;?-H[^*.I>1+H]!\ ;?CC3@H_*.K+JYMV'_'J_V?Z$JW2 MFRS]&UT5TM$$_=U_&P;2SIB;(/5>F!D<;_?+A2_]72=^ZB=*UFFV%;$U=!Q@ MJL.;^Z9$$"9 _L@\"_X%+:$]!K&@(,B%=3P+[,8.B#?&'$,4/]H=S;0G[[3:S($"76R+_ M0WH#LOLZU@@!U)OQ#:>K%1Q-RK^D!; M\!GN@S70?]A?X+LO<95@ K]2O0I.#;*7<1?#7T>:][%G%.N6Q9RC5R&2K 9^ M,R[H)J.[(((;*,OBD6:G>4Z+_'R?9=T+:)-3?Q-NQV6 !CH<$VG?78V=]PF< M3/D2[ESX:XAX#PMKQ)O>CG,9,%Z5]/65"!B&E _#2B"2@),YTC4)5]'D&VPY MO\*F.<@]AB#>18KQPR#?K!A.#?6JQ5BV=8?R5^49#V;W0:ZYQ+@@05%DT<.^ MX(?VBQ3N9 A/LN&['_4E1_83)7#9D3^'^QKK!3>?52&NRSY0^1EYCHK'*"%I M0LDK#3)27IY-("\>5Y<]F']:O:X@FHG6)$Z3#=Y=V6-\B/Y>N7W#-B^OV")? M$IE\7/!K5O60BL\I4%)4S MB=AD_:6G(OHFXS3@D P,V)4W?(S4#TQ,X@W98 MUKP&O47TD49(R#M!W#6^@B'G8;GN(:AFJ 910JR).%SP5O'$_F1PJBP.Y7.* M+(]9S^=994TW ((2OXVNOM5[9$FANO \DHI"QL%@>6>Z>Q@\1'%41'02-S:< M'.:MQ7%#T+[2.(P6TGW',#&'\<4/46P^@E$J<*X#;TQ^9 MK2A!SBA;[E,!>!^\Z$/ ::BC+GBF'*"#=<\4I+&6/]/Q[G@#A#L5./#R#E[Q MM2C5I@-]X"^J,-BKT'W,<8>,USK@(S*1:]&DI1T85E;M<<-#2C+W$:K.);L@ MX:6,W;DSE&LI:QJ^BQM["S3S&%9&=H2W8*Z.WW7%FTM..KR)QP.J0A5&9[_*@I\5$OZMGKY^!O:<:OAQLN MK?:B@*?& P25=;@'.HH"]^9/T=[=J*T/KX23$>4"O+CB:9"YD=AZM;,W%2]U MV"2PHQZK2/BFRWH>>^KSHJ7-T]WK'*W4O&'E=D<+>KK)*+_P8:YW84+ 4U6[ M&+)6ZJ%1%-#&CJHMZ4F)08(:!3T7,8T!XEX0][,DJD1J/YF_+8F"FV?!%6T._$]!?P8K& [Z%4I!/:->./:UG'! MUYL*YLWT00*W;Y?W(H%T0WP CXI$:9VRB'4I"P]6?19A>ZS\!E'R5IE=5X # MR/BHU#U6@G;%]G8U>)\%(05^S"%O%PQ/374LRSIX"(.B8&HFNJ<\ (PD#,YK MOR<[^6MK79HAI+SU?$;1!\[EU\@E7X8R.FA6O_:EWL>AH%]H'!*9.]Q>UKYVYFE&A;RKZ9"*T-]F2,)_RM)\P&Y@B>;E]DE+),?]$H[CVP:)Q%3O'1&. MBVX]*,+-$O(5:C6G2 ;$LX-(#>N M5"?I:M#9YB'[=9ZATJQ6^^T^#N J=R"A>3L=20S+8O9W+UI"7DY9%K$=)S$- M%=^F-2.;O><"6<5/751\HB.@&WCCP+D/>02PC=R6TG!#]=*0C2D+%SS?C-66 MDK"<-/,G'6$R1\EHRE: 7^A+"O,^+M^&CP^SRA[?D"/Z+!MG])9S"U-V7,\@", M-&<@]58,NN%U4I,&LLB9H6D'@]G8']Z:47]D@SK9X AB;\FD9?''6310>B,& MW; ZI3T#U3=GSH:A8,;UQS=GS0QVNK'AQ-Z4-4OBC[1F!OM6K+EF=5)K9CAO M,.(V# 8SKQ_?DCV?KIF_F]2H#RB^%P,VKN!W(D,/@/)/-*-<2&_M7M]PQX;DI?5J6N*8,7RS07W;%9N9';_YC*V>YPBQB&X7 MRB35B*N*M\&6OEXF3U&6)OQ>77R>;G=Q!/W\KI+5>_V]15=,I$N,_02K;S2Z MH>%=;^S#G\(51SG9<@B2,P4+<]X^@=,D+:*DH^)@K%4WR]!7B7Z,/X?@R@C3T&\Y_7M5J)> XF:X0L\<+R5Y(85 MP:\4>A*QP7FB6;"A/^=TO8^OH[4NVS2.)&)P,,%0M$*'$?1P HO1#"O.QI?N MY*/E.GE%F)24B2!-@#9R:"(UL+^&-\"- 'VQ#STXXH1O$:$U-VM@<:91(S/= M&4^ $PY/*@0OBG"H)#'6VC A^*5)^LH9>FAOM,E8!T.G3UY4NBB[L):)[KQJ MX'HN]PHSUL#H0P!/X_J+*6N@.S:*1O9E3]N*MZ(@=20NB=27! 2=<4JKR=$N MJX:DUS3(RTA!W:K;#HZ4C740H4[!&F#Q\JY6I@S]#&IXP[-@^ M&_#R_^Z6?901']!A#H@NYG&+T_7'MH]$%?$(1^EM;[ERG[UIZVLI9J$%Q^YT MJQ>AV\ZV"XO8LU;'S/_?WK;0_ V]C?[3Y7D4[W_I+C&"]V V9F#%N"[@!?]@4F MRBR;@Y@R2/I#3C(8"\MOR8+1,MG2+#[",L/=+4G8__@OE067K_M^;!^<&3_= M0_"!((?/']K"F-5\U7.%/^4[]+=NS+WXQA*/76S+X=:2"_Z)-L600T8 M=G?CGM5"/?OU:,T;P,#-Q>7-[U@=8(9.I>6D%Y M=MOJ#NW_VF&OM\/N%WY[L]V[UZYB"+DQ7:VU^R*[[G[I2#[/H<.[PHWS5KQG MC!=1B-NFW#H .S)QWM$J8WS=HX]A:\V-NJ3O:/<#VF!E+"8O-O5#&3=L]5W1 M^)( &$:O[KP96E$UUQKK[ !W\BPP 1?_'$*!-H#OQ^.!B]J&,NR&D@,Q8$26XPCLM]Z.Y=6:UQ5X _8 MT$.0V;D7F\T-^2K9#RKVLYI]8=R%C7U\J[ZNEJR'H*#WE F^72@4]3:1T=$/#O@.@ABO]'L,_7,IN%-."4C*QZ:1K(.]R!PYL&=(%EE& M^I(?ZB71'"H9,CMP\B13'U2\8U#R1G#TQ#<2?(:$DCU4/B?\ M[[DG6:'A0CN]9<(Q("5^K&=%4QF];1P/>>?I25#/4NO%"FM=6''7T[YE:+6U ML[?L51^E:F+2@V"P;7OW50+=*>IM@'W9\YR2;][W2$@/]CYM4OKW/Q(>/48< MR488Y&QI+8M=G'X5I;=.UO05HD?]\F+0_A'CO8@AW9@TA)'VP;Y$DBY46H)) M516U9X8NX61]Z A7FC)^63E)^>M8<6F9_9JAV$;\K!*>SL;RC7="0Q9>!MF1 M6T'$4$1)09,MFZKTY4[S* EW?)8AZ%S+F0T)/R'6;X.TT$[6AY'"ZDX'H*L9I8'-!M3E]\MRXB2*S,-91T]9YI MO:6]9I8(6-MYF+>]2]I@+/X;LZ4SVD 47INNO078<(M=IQ/:;';:VP$-N97A M(#XLO<]&X#D3$S7U.QN,Q'\SM;3U&FNH'O0WFTL$^.T*AW!BZ6DV',UYF*JI MC]E0'-X;JJ5AUT@[]:!OV4P"P.\_.(@1<9: M*7Z#HID$@-]7T)41EPYD(W'Y;Z^]7<=&(?+:''IO@YZ1Y0_G^&QP_BM/0 M,3(RX_+4./N8=[94$R+_S-9.Z2@;5E$2@9,(I L9]"]"!@E]@4N>HTUZA"C^ M1J+]H00^X6">$;WB8_F(YE?BE)C]94J1X5<$_!-YI_8#]&+\FGM'@LG_].P^(I5?ZJD\D"DR"YM\7$5;O V6? MCN?\90>;7/A)K5LDSYP J!G"YB %3 +=YPH2 M=4N@[01MZG .&F10OZP@N: 80!M\&_+U-0I? =^6[J)$%%D3/ &!(!WR0A- MR?ZFNG28@)LR+ 1ED4=;RFNE,9&S0(Y<;+Y-[\Q&+Y&?H]7W".8SM%'=DD<6OV-7 M3!O!W,-TZD["Z2;1O+^W^4[,\?:?&:LK^\,1#;F\=5*3@K[S)5T!.] MT=CIS\5[3>-OLK<3V(E 3Q3\FQ-'")5D&2(F@A@PW?1ERM$!?]#*\6W '\@>L>3'"NE?5JN3W7O=9GY9_,TG0^[PX"0&S2A? MS-/(D-D2.T,\,#H#37WVI;V^L>B&X\:Z MJ?1MZ4;QQ2],X-K(-=U11OEVCAW72%QX%C6)>=701B%"L;\)E'9[@56XSG?; MM80TD#=>)RP-6_Q1/ACEL$7DU HQ5\F!]C:,42^V:I*#EJL8 M9V1N*/!-;0BK.H-S&8]J=NX$FHWO=#MW!D8X@6T/-G>2"^6,A/'"_GO%?AD9 M3TS[A^$;7!]+.B,SC4$U+#M19F-2S_"X38$956.1]WDC6?-@I_=^MZ-A$;TU MIXH/S(@?*"AF%$?\W/%"/8$H&0W'%K!!)K-@QC.[&06C6N8,:%&,=S:Z.T90 M8U971X G;>P;$C1'#?4,IX/\Z4.UG,0^__3X$\EK">PJF63HJZ\+R_KXHO/4 M9AZ4?KN//E$,]1LF?-XZ##O!$SR%.>Z&ZS_GY"$&BD@P7@@^$\I+ADO_0/ET M_GN(ZH)W"^(Z8@,AE1X%4Z39C]IOC^$JFJ&>HP^OMQ[$C? )GD0^+SJ%4R=9 MVJ.X5Q-84&2?TH2Y%?Y\4+X=%!<$_7:4F>3K!/'ID/GM-,SL#W43 M74S>.@83J1-<09-NV!")]+Q,WUDH\L_DOP?[P_\BU_2-QND!K@XK4ECB!;\+ M%TSB^R"!8_6"[K5/],=@07J#/Y[A^I']$G/:^'(J^QU*\4?G^6Y,VP3X+=A+R3[DZBM\WPDP>$0 M'^'U )^[>IU4Q]K-[EQ!"!MTWG/GD%'XN?K3CW'SOD'_L/_T\7XM(1*!B+#> MR<_V,5U]L,(X1X?[PGU.758_I_\!U=4K(Y\!R+0W [J QE'Y;T%-(O?(=@(@0V-S09,X6W0-IB'"=& ?$G4\TB?J>H58/P3_:H:-%=VU#!T\ MZI4,,T'FZQC-:KDA;-AJUW<=%L@I;#6KFB=7=FLFZNS-59!E1[84?PVR;5]* MV>Y$$?4%UV-P^V'YDXAW#\?K/U23B% Z8[]I^)"N&% MC4?6RX-CDC"0A?O?NLZ60 MN"$7ZT+ B(>X%@MK54P>Z@L()0[\Z?W+$*[2>ZS%!I7R8P-6RF4VV2N*T\O M&H\B+D>6K9%5#PX_(B@G(MT,.DI(A:O.5/+P2$'G6S TCOMJ!Q;]DPD@DYSR MBV;;"-HR^F:_=\4KS5Q%4@%[9(LM\NWY18#TPZX44ASSA## -_NP<6$G&$?3 MG:^N>7X=;>05,U^OC8V_OZ0U%T5JDKUZ'PENV.%\&>91?U[L2 MI]!7.\Z7+;&%*?/65S/(HRVND;JUMK(Q1''/0(&Z@?5F?^HN']TE41A-^'#2 MC/=JJ^G.WZWN0\USZN;J5!Z+("O*PU6:=^KTN SPQ8WHV##[#Q7:(\?1)6LM MCY'#S._* PEA;F\\A8- ="[B47+#!WKE&QPX>FQ]"U_/X#_1(?=&O8K-%=+[ M[HGZ$7W7A+C?"V5FOU[4/;1@UQ#&?'GOH-"NI(H'W:(VC?/"-.Q,&>Q$/PC; M:&Q4V2VHU1?>W^O5XQ@$2U+.+/RY:*VP&;AAL4W M6^MEN-_RC"@\LL,>&@=8I<3$_@6X^(%%C"+?RQJBM?Z:IMNO M41SS!G@%XP%.S^5!3?OG01(;A-+VU_ MN@04/F<(@_NS0@KQ[0L2#]'+:W&W^YSK+7H"'OP9)P&4CM_ M(DH)16>ZBY4!Y>_2W;LRE\;B029KJJ#-+O#TZA5'^.YN]XZAQ'6*<\O@].J5 MYDO[$1_5[\K=+[[KA^!'-396K%7O?;ET;B;(>8_L2;YL#"<=;_%KEN;(5E+S M<5$6K[R%]L6WR&0?)F \R["3W^U2?PJ)V%!>3XJI%3E/)DMP\@<,,.>_D#3G M.MT'D>GQKAG<)^UILV#7'P'KB0:IQ#CJD!B"K$775<' *PA=L^-'NG\VW[/4 MPR*NRS;B6PNR#A!G)393TEVX9#''$\41@Y 5IU4/_O^4691OHQ V.%85ZAV% MITR.#*EJU3,$1<&<:#*4ZV_Z%*@#/5$X\VM^@R1L _#4K)\-5. M99HM5SSD $NV$@>N+7RB56=P,-(/3,MTY?\N MWH(HAFSD4WJ5[O=I\O@:9/0UC;-I7)FSE(,PFI9X%>=JB;=<7NRBF7)EL,X(T8RS>DW#F/UGJ[T*9 ;& MNOS71WYSP\\$B7B-STY2]Z[>RTO&/X2O=EC&]VSW2%]") M!]Y'384$1U'L!:2W\=QN$HK#-A M70VU:27Y X:+1I/3U-$0M]RP "F!MDU790:]MUD<]HE]/_&#;C'I&8 4OSBQ M4< M1[L(TF9Y]8RC\Q0HE$B;0STLNQ[*I6"HAF].<#&->2 3HN%A7BW9BSVUR;-" MB1#93TUTR'X0]_R @E]I^I(%A]V/4-VXEX,&PKX*H1G@,E'2U1 MP99[+]"G)$))55JTCP1Z8)&4I(_X6DE,@.LKB9V2'B69_4% 3L.?7M(W)FA^ MV5QH2O5#HRC5+_[K__Y^ZAR5/R $ !VR^&I?_W;5CWLZK::>]G$?).0FAT*3 M^0)7IH=]R\M' P/P![QOV9"E?LO+1Y1O*:?M?,O+X#78!_@?\;/I(WY&_8B? MM1_Q,\Y'_&SZB)^3J. G[&S9QO^4O_UJH!_^@/:396P35#BY>,BI^]24J7LG=U;O+WV[$9\XF)FT-&^DO3)$RML]_ MI%_Y?8:K-(,J#,8G3ZZ#D+;6SNS4>^S>$>MJS0"2NG=38!S/OLB11!DZC[

.< M?9P7;07^ 8.1-'TP>[4%.(_$LXR!)'8OWM0 <,R0"1SDA2:0*F-A%G]M$)"< MV4Y,"?W&W&O"MK32ADCQ&A0D"/E2G_/;%#__&]@;("7LIWTJ;E6P+13EI/Z0 MRUG0"A9-E9D83P !D1@(1]'8:X,$,P$ZKW8P0\O3.-IRQ9 ?$;L6$7/X8<3- M@_T[IKRI2;*]V,-QZS]U9C-L*&9M(G?6VC6*^LOO=M)^&+V_ M+Z+CT*R_Y9A"9S=KR)"1NUVS/, )=X60_[N-4K88S?VXG'0%FI$48M/T$.5_ M7AXO:1*^[H/L3TL5J_YA>-[4E275D_:-0?&B;D1I%%(91F D15(^^T.<'BGML08M&%8:QTQRD[#IPJP?2!J)Z"82*LBJ^]62.;X/)8WO MHMC\J4\ D#ZRELSZ\[;^NOZ'U4S?^:0 0](H]J2VVON8N9$L"J/"7@%2 X<7 M-QF)5@.E#A!*9&2@HFOI#9PGFO&1!5\%3:!>O54S-'!XFF$D6M6,#A"*9ABH MT)R!UW"++@ W25YFQJ^M!T%[[Z$E57GAT?K[^@N!E@#-LX *:M'O^I >@QBJ MGIN_:P<$Z;L:2*V_Z\G?U_^N6@(TA\Q%P!;X. HA94=8OR.'D6 M6HT>39[N\YS42W5N!?\.VN=6M#ZWNEWV*?-]ENYH#E6J@CC_0"U1K D223/M MA-=:IP=;7Z-L=.BZ=]; 9$<7#H&NHXQ"GA3( EV7.FU6A;X1:/5X7!A1BO+8 MP-=7$1=Z-&5GJD$_"$7A_5YKY['DM=S=C@7J#S0I++=R.S!8EW(-Q#9W4@Y'EG_4;U=614 %&'GB%F 7U4;VN=+=K.IY:W%CO$*Q'_&ZL M-&_Y[?#K>S(G@G0O^NM1HC9'/6[A#!Z4NTNS!QJ+>M^V3)X!%+&"BX7T5NT6 M#1QNU18C0=I"( #-W%T%3C#KLHP@O 9?5),ORYSM%O+\FNTRXI2W?.\/YAP& M(6FW,SNUGO>.P--X1]*Z;VNK<63;#*PC/"PKF,R,,E"YH[FD:03;:_IB\!@A1S8W4:%Z-;YE2/]?:C*;,PT@&6*FS"RRH-EC>3C$ M$:,3F>2 0+>_[DSZO7('NQ!D%=(#2?;R!77DN*QF\F M?Y)0 .*Y^0&T5H#+YEV5QU>67*L&"BN_:B2XR:EV0!#RJ 8:K*_?ELV5PD'E M54:W4<$"W\AV5\@(BI4YM9/>)%#U<.M_?2LAAB-D 4X$?+\FS,* I@0$91-)!@!#D?C98 M@N;2V($T(BF-S":-];SB<[\PGEV$ ?F'L*#;)YKM?[9)?Z$)D?W@HF+L.,!% M9L/S? NRLZ;+D],3F!^])>#JDJW9%YV[2!SM*/GQ2(,,N^G?K%Y?LOE;"@=H M<50(5&T)6B 1='22*M&N1O-70WZ&# ME/WGUG:/[7F_,^>H$^KBKE&=]/MQC%VN4-RB).,[=HH.DJ[%(7MYDF-$8W_Z M5/:))3?)Q;%[Y53\7O2TG$=(ADZ7TY!C][^<@WI[5TP'5Y5;?94?%>E$(^F; M9$N_L>UF>L.\"S<1GJIFM9R=L[*.7N[ MIU4W;[=][8=G0'R&VZ^.6&;97]WB-C:>B>SY=TCSO2?&,R3A+_*[LLB+(-E& MRW6P0WIW?73'.6_MW(QZ(>7LQ*HH2(>>$W M;.9SO:@U6);"SX'3RHLT_).\P$B212^O(!78]YFST-YGY0=+@T,R;7E'O@O7 M_2'-=C0JRDS6+XE$C?I:%@L)W&'>\W7KSD*=T\GW3GJ6+M^1JT47 (4&7JQ' MH:)9%19R@;\($2?T!5J-+>D"QTJZ&D>W_X/"F._'-2HA_!<*JQW=7KSQ1JKO MO]$LC')ZGT7A[#*RSK?GP-?GF/\-/O9.WB$C]3)T)^!WW_N%^'SX+31 X7;R.SW5U6GX3*(X<'^ MO]L^YMJ4G&&=CNF"GZ6 QW@RSJNRQU0^$7/^-65$(>W,RX',_CFLF6N]!&]Y M*9'?S[F42%>,-XR_*,FCD#^;7?Z0X72^\XVV>X6XT%EJ>[*SC))[N%G/=]:S MB\?QW]?YJ)-H53]X\?*2\3LPSG)!]';\M_E%6;RF6?1/NOV<;&GV")6S%[@\@1,O;W45F\LW#S2*X?M\V:1J/O-H,?!B3@]7). ?WXI'Q!!%T M!6!]D;S(3&=I:GV"F\G43-. M9:D,=HZ'UZ;N##1.OWX,LC]IP:>TM&@P0&+U:; 2WC1KT(*M7Q;=1D>W!0( M$P%=:<*BK1L+)P70@F&U:#23W+1E[,(@M&(T$=%MOUBL^,6?TS?J]M$-D%C? MW4IX\^FU8 A?WT)'5P$ > $=T =K>58H@1K[J0G2V __]1054,GI)N$5RLH@ MUNQF+'#KJT6TC&CG/,IRF=>CI-02C"UZP*6]L7L&!SIC M"TF<7 3@?[P."EK7@E[HIY>$LW0@HWA (O7"=Y*O-K[70NXOF;8*=&U/V?@K;.V9;>B MG]*$!49A"1IX'64T9 -S[@)!'C*LGJ"M[7F__<;S8LH M>1&QOK5_[FQ3G.&FV"*J67:\&OSGM9TU,K#$7E74[Z]FZZL3.,%7CY;&1QKD M9<9!M-4^9\>.M [,+Z!ZU9@/]6*&M$W#$J;AE"W[A4W7$5XIV3>PLK866ZT( M(ZV$$V$6'N^BA*U=41 3)5 B19"]T"+?0*;GA_OD]^1C4J MN'9[$F6F94NA]CW!7D=@5X[ZJM%WY/ +\AE5]:7K,JO7/YX4U3]^-"V^8S A M!E/C&6_%3,/1X(1&8^G4^X:<5+@V(GV^T0<\C8$Q[[EC-JJ4<\ NR3";0)I* M^&\LIF/LYT)"/47P5S'OBYCCI5N]!X3VL4E./]'B;O<4?#.(:B@2/*,>QZYJ MS\,PH)CR&!*[=X0E$G,'U K1AC!4H-T,F0>I@@EO\3^EB;!08;%5>UGKT\HE M9CO?4AX] IRS7(=AJK,LR6'E9='3\'IFV82L;GGL0^'B.40ZZ2[-2@1\!P8_ M_@;-*K.?MUM OS?34(LKK(5*@4F6([[3W/M";,\U0[X+2Z'Y.JI6O^E:GU MX:M.3^W*RT]PBT40IY8HFJ6ZVRHQJ'QY\DBS-[:PZ3]5O3!RWG-^05[]^U6: M%Y_2XG=:/- P?4F@+(-()'U(L^I7 &D(693'2GQ94,AZ#OU)VM_Z^_22ZSJ M$+XOV\6#R:O5'PA1]*.,BZR?,2SG@-GV4$'CSS M&\VT:E:#D:"8RT@JK0\#F%X+5+)6ET3&5RJ!CDA\B]3CV6[Y2@A&G>35#?.F M-L,#_4<9Y5$A?83Y>M=(1%C5?*:PW13[&8,%+V,P@5SM5:R@Q@?[>XF0;=OK M6C&91$GRRN575[;X'[)*S6D'_;MS5+!=Y7MEU58>_,YY=?@ M(@HRM+O&O12TD@3FUQZHYB^2BP8^_IO&624X\!&2!";V" ";+&7\/ M8(_W# /-LNH(_O0$>0(>K.SO!*:;M.T()(CYUM'4:IUG4A^O'N08>0\HY#@A M^"U2]@./%JH_;2D+@K>06BL/\-L##:-=%)(P8V:210%:VG(^X:BH2/6R%I"1 M!AOAZ$B-K^^$>HT+H_,)X-,BFH'F^JJP>9K?:R/QV>GIV!WF\50,GKN[+JD] MOJZMLQD-:02;':ZR86/?.MT_:]?G("AWORQ6CSBGK0<#RG-X;.'H\GS\(+ M@87I+6QDV!]@FRO5';!A^:]9>*XL^&Y' W\5Q[F5IBJLL+L#VKZ"]-YS\(LZ>34*>*:%R&A_\WYSR.7&) M=5ZJ:KOQQ/:O4C;*1I;+!B8@E\U%2M2 MJ'TW= U\Q0!\2\H%8 M:]]H5NXE*VZYB'6>"(6O=%M";X%KNHL2NKVD"?M'P1M<74=YR&B'ANA/P7-L M?.4S# ?B0YTQS+;>V@Q!@/-<9CB%W:1:A0-4M<)"*C2B\1E1$)$_."KD^E8/ MM(BJ A*,P",UF+[EATDMVG>9'5-+8<;\L7:PLY3L*$ MIWL3&%?5<@0:%(T=36='F>7"RA]Y1<\EWP =IEZWF:S(W:BA6>MOV5]N"KHW MK:N.8_&4=1!SJGHZ#411R &4&550C>V4T([\ 0@(QX#L7BM*KQ1; 6+A1GOO M P['L>A:Z<:<1BOM S&UTH4RHU:J@[EJ;O@+!EQ%K(L%7.0Y+?*+9'L;!?P> M900=N'C5N>U=PI@L,ZAVQ0 ^I4DF?[P,\LBZE9X1/YY"SRXD5>EG0XYB&#-3 MWS&>IM6*6ALRWY :(W^UK>+T8P,_AV#ZXI.9YSAO [/&.[-.<+:&UA<_-<:V M(6(:;ES*1-((MP3NH9E-D$\W7[QE. .!8@!WNP]I1J.7Y/VW\!4J$3Q$^9]/ MZ74:QT'&_G1%LX)MIZ\8830)(_WQR$A$2"1)A3"M?CE6"I7EY1P0,7" M3*O'EVT 3J^O?HJT3WNK882-(ZV!"T:G>58HD2G[J8E*H>7ZQ^#OS#+*O$CW MS, TQTDFH/45R$ZN[''?A5B]C;V)!$VE=P&SW!%1S]?_%.SIW:Y%K_9 WV@;6) ML'T$VG;#A1%ELV$#Q]AJ]--C5Q<^BE3#%F\Y;=@6W1HRU@/&^;==[3#ELF6] M73Q;W']%V9FZCF8EYH>R:%ON/II[MMWDMDY&$[-9K)# FL2B KR$:8NG/;R< M\$M&Q76@(*<725(&\6,0!YDA@^XX$,FX![%56[?3*#SS'D">YN9AJT V/%TA M 1](CP1R0JQ4^!3>F[&D'LPK5A,QG,CQBZR= MP7$?)'RM?J!%$,5W!RIRT/D]S:!*5?!"[W8/](TFG2XDHS!@K:>C&&U6UD'# M$=?8$73V6>.A'BB*82A!7B;P$! T$7-7@5_&9R=I/3W::Z(Y)-)B3: A#1Y> MR%F*Z&Y'*ER(]OIKEN;Y?9;NHF*"3%I8_+9;#<-#;5=!X;W]=FB=8,,O@(L< M.++OP)#[13/,F#D^(A N8=$J[=>4P?^CA# B#"'>R1]XL2$XH;MD44"W//,X M%$BV/)+5VI 'CL>SXE&$=O3TOF6SVQH/"02BJA(5(&(1,V#Z:>%VM$;;7(+A M!@^1B$B#B52H,'?.JW]FY+?,MVGR M==9(&-)G-PP7=G)S)R'X9WT].5)?7R M9M\8E/N8;D1UE ^&O>.]K^JZ+\W(#1%CD0N9=.SI$S6IF@$6L4R)C?A651(= M($X1$C,EW9HC7Y%T>6W]QJKTP")O/-SXMY9N<$> ^2!_ M*)OM)_JNHY$>[0\C3[/U;^FE%S4@&L)[JC]T ?U0,UO%AU,H=+7IJ?+04@\O MRCL8=/ZVY\%9_S _E,?&DH-GND5]Z>5&5(^:*0,]>O9>9?V@Z6S.3[^K GDF M?;/ (U8(Z6.B50?$!(Q3[<-.C;M.;61IPUQDL-5UDWR-BM=VL(:4-!K+MMB% M0T1*!2#)*FZ*E.0E"SOY>;D\/%ZDJ49Y.,0<>Q W%2SN=E=!_OHA3K_>)*(' M-A1@-3T-&HX#JZ7&2&:;CAH#$:Q_OV\A"PW"5M>:%[*/9F!@T,(P9(:!K?IANJ=/P3>:]VE_%Q#3 $QDMVW@% K)#/1D M:/0# F'K*S!EO=?)[ >2GW!J9]-PPV!R0/=LL IB+$NR4R#^4=W1;5J=AF,:OQ=WI5 M1!P7*'TWBD!!!.JJI7(E MY>I/4/A$XD<+(9:4CNPG#VKU\U\W?_VW7[@N_++Y]U_^8\-T&5KG0@612$*41M+%'CQ133N U%++(Y@+56 MC4V'<3@E-IT)ZY;QD4-)-18]YI^%F2T-XP#L"UP[^'4(G!:IHP;96V;+^24M MOE*:W"1L=6"#CXS>^PQN(A='*%@*]$.'S\.^:S=3$&'549O"=E-';0P6Q#IJ MX\FUY,D+B54J$A\O"%SP7]4H<<..9:1@5H_-8/U8I(=FFD!&4CW/JHG_ MP&B_4FBY2>XK2IY2HT2Z69,%Y\'JM+F@T)KFFPM,@MB/A M0:QW,I+E5OF3@3APJZ&,(M:<\%,;>O\KQ==;UV4>Z:N=X\\JCS>?"-34G4C- MF1-V+1UU2M&I/]^R?_WG?Y._8?\'E4+^\_\!4$L#!!0 ( )*&>UA 80&A M!GP .O5" 5 8W=C;RTR,#(S,3(S,5]P&UL[+U;<^,XMB[X?B+F M/VAJ'F:?B*XJR7=U[-XGY%NVIYV6QW95GCTO&30)2:BB2#4O3KM^_0"\2+P! M!$A "'OF=/EM $0:WT?;@L+:_WG_WI?NZ,W$(30]_[QT^27\4\CX-F^ [WE M/WZ*H\7/%S_]K__Z/_['?_Z?/__\OR^?[D>.;\=KX$4C.P!6!)S1#QBM1B_^ M9F-YHZ\@"*#KCBX#Z"S!:#09_W+ZR_B7B]'//_]7TL2E%:(JOC=*VCKZ99+_ MX2IKS??^/CK^]>C\UZ/QTO^;EOJ*>+6!;01=Z?_X=_\\K M^MX(2>B%__AI%46;O__ZZX\?/WYY?PW<7_Q@B2J/CW_-"_Z4EOS[>PA+I7\< MYV4GO_[OK_?/]@JLK9^A%T:69^]JX6::ZDVFT^FOR5]1T1#^/4SJW_NV%24Z M;^W7B%@"_^OGO-C/^%<_3XY^/I[\\AXZ>;]JW6H1'OT54LIOQ?ZO_S$:I8H. M?!<\@<4HD?'OT<<&_..G$*XW+FXT^=TJ (M__&3_L'W4R:/CR5':Q?_K.B-3 M_M^9Y]QX$8P^[KR%'ZP3!?TTPNW_]G17ZA1NZQ?;7_^*__@K6SN_BNCRN_Z/[X":TMN?NBV<9J6DA@EW#T';], [ 8P ]&VXL=V9'\(V14-3J M@CLXLVT_1FN.MWQ$:K(A8*(*O;[@+F*HT,J(_X-'SYOE8@CYNDEJ0XXVPR=@ M _215Q<\@*B30JM-".[HG?>&%. 'G'PL5!,-LN]%@65'X9WW&/C+ (2\"#_A&B$S,*0<0-+JRVX>_< '4\X.Y77$:XIO*5ZL=YY^U.J M*+A3-U;@H64C? 3!\PHMPGP]J]<6/A#>H ,\AYO[VVJ"._0,EG@JX#UB4NL+ MG\3#:+YX FB1B$&()JTOP$/#WT4_S9PU]"":P="7W\#-^P9XW*.C0_.B,< [ M^<08=.6O\3>ZX$!H0W!7G]".-DAVNY=(2PO(.S\VU1?[P./?*U,;$@Z_BX\\Z'03?;P$%F*9W6$E)[F#%&U0>J\9R=[_='=.ZSWH\#8M>=M<;I"\\8]EX#[<]*:%SJ.=8 >_2PM"< M<%1>0_#O&'WMYHU_<-9K2S^[BCK#2CO+UC_U@H]XO3N7+M-;VLBFQN2=23OTM%:9?G'\TXL(#>C_*C>19[N7]G+L;V+2/26)!_ANU&_N0TI MQ_DN'2S7E'>T[Z:\6G7)Q_PNO22U(>O(WVW<5"I+/_YWZ26Y%=6F@&[+2<>/ M[,4LT D?:DOJ#EV=9.%O7OIN>^8X$'\06PRV7[\&D07=WGMP>MO216O>80N2 MK:5Q^0<[TD9+D'SM[4L7\8OO.S^@BR>OZI9&D) L7Y N)CZIA%LCV#Q:@4"H MD.WM2Q<1_DKLNP=G<2HUY9O\>A&?4H[RFT>G23J\1GE HO; M_XG^]EX,0E_!.[1]U*$_@(WFL3?@^DF?'ZP@/2AU8T3OCRD5?@\BZR%HX;:T M'_<%?E:R01%;"/ ^$"UF\3I.+C-G:S^(X%_=I>_Z#FKP[BR(;TE]? J2^8I&.P[W3 M)^0)BI;%-X@?*Z(3ED#AVIJ5)Q Z/_IH57=AMAK< @>;WM'?GM *^.+?+!8 M/UH ^)]]Q>SV,7G"HR/SO>\M7T"PO@8+$ 3 0;_/Y^2N)UKNYN4)*.Z+N"F0MVW5 M5_'E"AVMGF*^J5H5;7_?CW*8>[$7OX9GN/3@ MIHS'X#<+G"]HXWU+\E/IW& MZTUB#.HV4 1\;S\JP+^=)U_.7^:*%)C2^E[$JZCYUH+![Y8;@_DB[54XBZ[1 M1GN^^!*D$_>=%P70"Z%=+G;S#@(;HL8%*D=>W_:B6H&:D-7Q^LN?3IVF-+.' M=T3B5F_^UO?W_JCC\M/>WIY>(W4D5DMCZMSDNHWN#NVK$U'@MEC41SLH W\]ZYOE[[BXD!A?M#&0?R;[[2^SU[#Q'\B;\BU7H&; M-/^=N>[WR<7YV=EIIFVN'C<2Q0$P)0KZ84<4](]M;UY0BY4>5__\_>SXXN1\ MMP,[;1S_6.%(.?I:5^'63Q+KYV5Y!=XO^ M(O#77=69=#[0=HDL@LCFAU MN,+NWL''E>^0(:?6,I0!_#)GA#A7-7Y?K/<[!XF<6,WQMUOF6T)Y0_'DD39# M\D(5DC/'R5S'\7_NH0,]8'O MF .^XX.!KUG2'+ZZN6>_\%VA'^?!B__#:P-O5[(HT&0\&8^/!FZ;XY$S!TZ! M#:?4S4<_C"SW_X,;ZHZTJ;#9\+6+FB-8M^GL>>BE^^36<9<6,QLUFI Y7@IL M,G@NF 7 (HRQXI^-PZ=5N!P7!888G&?'?5SY'ME65BUB'#Y, N88U:TOTC%Z M!G8<((DF1Z\O^ ZU :-J$>,P8A(PQTB!023OW\V[O<+7[@2#9E,Q8[%J%3+' M2X'9(W.2>/Y8O_IN U"EOQN'4+MT.31UFX;.QN;??1?M?JP@N?@(0N*&L%+. M.'S9I":2:?_*BL#2IQA'2J4,1:U=QARLNFE$Y_W.\]IRW$_"=O0AF ML0-1.[,H F&*#X$&Y,+&P<\I:@Z[ A-0UDN"I:[P5^,P:I,M!V4HQI],GEL8 MK.\<,I;IW\L2'R&)CXU DR)=[GI?-_)HC2>^ERD^*ZLCFIAV)0R8^8M#&W+_6]@ M!>3'C:2BQJ'-)6@.>-W$I"?@NZ-Z+MTM^DV3(9%0TCBX>>3,T1[*>ZRR;.F# M73:\"V7+FC@V)YH FZ0YYD.Q4LV0:$XB7K-AJO1WX[!MER['LVY^TA//5 ./ M\:L+[5O7M\BWLH4RQN'*)F&.+>%9UG_^6A/]'OVB;YR6B[,>H3,?B+;3;4N4G,D81\G9-H=^OIH_/,_O[ZYG+S?7H\O9_>SAZF;T M_,^;FY=G_A Y)>(MK/ U 3$.?UY:UB8+3^1&8?Z;'0VS7WS?]FR^V(8N>_33 ML "48#H\U;\?81-DST'52[8D861%BN9"V@TR?D7O!AF'B%H%V^F%]95KA>%\ MD1SD9^^PNBUJ+:\5 S@0I,#.)"*1 0K +';XVE];L&H\)A?4&SXF).I(,HJI M%82).2WI^.PK:'B30BY8ENT$R396#R$C! W8L15=6$'Q ;YF$ MJB(:AAL_M-PO@1]O[CS; MC;&S7&.Z]Y:]1^<&C>.68%4("C:L">586-2HC5.DC0M=B-'GM-LHEJ#-:>1' MEJMRQT).[TGLRJ#][II0NZ.,KB%:^@V4/ MHRRQ62/TA-+FP,\CH*"=G&+#Y!??=WY MQJKK?IG6"%XPLF9YXO?PE0= M!(I0ZYC##7XQB0DK1.P+J]D']L2/G=VU=6?86-8@/C"+1TY],;#9@0^L5NC"" *>J M3]P]5[Z+1 O3@U:+UQ1K=2TIT=F%KI?4IKA%%)3 YF%'KJ E.WJ!3.4,B_1: M^%01K-&Y)]"C]8'=@- _ [0>9HX 8>X)D$E9E[O);-VS2=T)Q()XQ=8M0R,2 M2*7:*%Y1$YN_7KFP6>3I(*N4%4D#8B0#9KUQ_0\ +H$'%K#U.IQ:R5BB\,JL MR66I@+/S&W2 Y[#-'H3290V=3Z<7YP:P@D=84SSZRM;$7(4?=%;0*YE)C@XR M"[J-UN][RQ<0K*_!:XO#9T-),XG!*JB$BUG5;&AR<&6<0EBJFLF7SI*; M<@M\G?7VSK.1["W[CZ:R9O*"751!E[PZ'6D+VA/H+]ZS53-Y)D,I@FZ8E4]- MK88[G"-B+;4[EE15NO>-:OL.57<>"'8UH-%@X)Y+.- < M3!]_X+ UR1EM"3R;3 -*C4.@!:_XIMSRU16W/=P_XI34",\H"N!K'.&+KA-";J85!FAF=,?DQ65J1Y1'_; 1;B M475D2C#$Q[R[B?RT^'<-)0?"'BJ0=2:P"JJ%,Z:@$,6MZ%>+F0D]DY2FN&K/ M' >F77^TH'/G75D;&%FDYZ6$TF;R@$=84S;$3R"RH ><&ROPT#(:SFP[7L?9;T,IF,QV=:I);HR0=&.47YO*FU MLWR%7F+>RW?;!.RKQ0:"_![.&TR:,66K(4;#4HTLG\S<@SX%[954.T&TF+S: M[QL:JWTRL)>F1,5VJW)+65[$QP2<%8B@O3N5M29)/&5/DCCZC](G_J>A21./ MQ]7 )<-(FCB93)7GC^97=--ZTBKB9]+$QCQVJAG @2 %=B81MP3!\PHIF.DZF519;U+0\6V[6>:2V4Q_@T3>)?A>&,1\EPS4JH\?WX M7,W3\2?P!KR8^*(O_[-6@Y%9G_5A2)7'E%<(831?9((2Y]U"&5.P;1=*U+M< MQ>G* C\,'P-_070C+Y0P!=PVDA#K)()O((M*3H*; M7LL8"G00TQ0#S1<+>O=H!,R]9\O%L=2R;"M(%_B'N_7&@D&R^4*;RR5Q.>=M MQACJB)!;0H1=E;&"4A5BK1#(TE#2%#ZPBB8JC*[:5>7!]_RRP-F4V?+6O;5> M66?':L,0]J!#-T%-L=ODGN6IY$G$(P(A&DIJ18%^>-9YP2JO*1X%N;ST[6:E MU$$P@"9KWU/E-$7? TML,>N,/B&75'IFPBO<+=+0<_P:0@=:03V(4TMI(V'N M(K,I+@&[K0\6FY#UG3@%,-0UDC']-6#FD72^N 8!?$L.Y&RGSU(-H[G"*[EAPF03IQH^_Y5+'QHKS0ID$U8R3_-E5$ M> D6?@"V,/..E(JDAYX5?"27]%Q!$"1^42MV]C"8[%M%HI+0Z$!EI(UL MU&:9(*DTK)4VBT)LXIF2\:5]V B,Y2+G8V5\3M2F:)4Z@PG3CB'Y:MHU1M/0 M#2I.#.P[)V8I6O.E.@BX;D'8]F.)5T;B2,BRV^5K+ MPCNAWS"6E?*U9$K\B$9M\ZR,QG*(75HSGB14Y;V&;AP!AW.W5*E5UMI M$?LE%C'S96WP=[9,:WRFD=Y[IF([6K&G#Q4Z[IM:=?&Y<]JNUPS\$_P5@]FY M#TV9NH/*!.=;+PWF$H_$9NRD"B$@KN$;=(#G[*0'MHO^PQ SA5A5*Z[T>L;= M4=9\U>OM\*3V@=XW )ZXVM**14$YTIQI9,:9LU F:*&[V&*)!<;92UNCY>#P^.*IQJ4;> MSEIM1*DNR7V.Z,E]FL)+:9#BARW<5&OI(2;PT61XMR# FJNG/"*;IG^89#1, M1JLRT]XNV!W^"%8R.0L/I8:60#*@0[+.L0LY-'RI&7JH=;3$F!BL%E1Z\3Q0=B<@+EEO/P,4^XY>>7^=6__CF_O[YY>OZ_1S?_[V]W M+_^M-N%M76Z^C+?D^M]/%05F[G]BUN=I*(>F.<_10N-ON" M%-B91-1IR_X$' #66-1R2B'J7IU>26]8F1!J6M"Y1=8)9F&IC0V!DU%,+0]7 MZ4ITY:\WOH=W4BQ3;U,=O8'M-/TRBZGMZ8MC%A[>W,L,3QWB8P/0"1S?$P61.A=A5B?@%E_6P;.%23Q!KKIZ (_'1YK^^#H.\*A(>I5D M3'\ /Y*_D!E[55\_PSD,R5Q\P=6K##&J($UU0,@JWZBJCRJN",E1F-MJ^A9 6 M0I2YOADT$B.VE"05FC(I6:?1$$.=#9&4\T7ZA]G4X=20*YAUCHR5M(T6-S\;F$:^/+D1EK]" >:G/#G#FP97EN@UC MD\:PULH&,JF;S'T37@A**2F?,^FPZDJ:M/:!L88B=.],$[KP9I>2D^BHDQ

2A3?OZ%P*0V)@).YVS**+&/%%I7UH>Q6C!<72Z5, MQR@-'03)>.47E1U"+Y9M0Y1=6>&*0*!2&;.XT2Y:[Y01C7L2U=:?F?-'G"5Y M?O$)7GK) 'FUT'C #B/ "Q-$GT!J+4.'QN -VB =3$_ ]I=>T@KM&"7[LV:1 M4XFV1"7$T.&T/R WDJ/)>#*$Y\W[="/)=2(JXGCJ3G#CJ30H"/$B&3Y9F,03 M%1"U$7=53]SQ1N/6]7]L+0,M+]M/>%ZV7\V>_SFZO9]_>U;[GGTK9$N(-WJ5 M ;Y:UVYD4K!@?*1>'8T#]BR5\4A=.\3)"%)@9Q)Q\ P0]>19.\R9X*O#SRBF M3N\G90(-]L#=;Q^W[/@8XFT^F%!EG= M^JW<=-D&#_8#B/ &]C'PL:'6N?SX+03.G9>EYO&6,SN";XGK2LM1@[\AO4.U-PT)FM:*%[)R%M=K&&[\T'*_!'Z\ MV=[^-6;4G$E;O*7+Q;T0HPET45<]&<^R5[U[]J#?OM.T%IZB)4T M]^!'C3K#FL&*F7MY<1:>L[?V26<*G7NJL>\^64_6 M1[&Z9T\)S9&KL>_97\ MD\1,="):XEBPW1GV[<=>S0C)4N63934S$I^NC P#L=LL MX*QR\\4U".!;DF>,Q#%*C4^*E2G&JRH)(1Y4\ROQ]+VLOD^@>3W7"G^RJL%Y MFDU+@B(W")VR",9#/%;FW@P=LJ/TV)(&Y$'[S)WQ*43Z;;(1LM;]9%+!%-A+ M:7T#/ B]:J/>]6+]X:O&]$W*5Q"M?*0[- .G*D?B/L>O(72@%=0#S'1NYY-I MM?M> 0J4$Q]"]1+9K)#MR]1Y<(USO^(K<4I@-[Y&/NG9%!>]E_;DA+90S4VD M^@"@K<8U2/][Y^5') 000)O95Q>@D9O<%>U@P&L*B:@]6OQD;9FUHE79.XZ& MC.F5O+A79$_37^5%FU]9O6-D:+E UU6!UP@/?8@*9(3R?U#D76I;&/JG91LW.6NP= M64/I\IIO+1ZMCVQ?@7X3Q%L%A+D&4@>*Z!Y:K]!MBMHJ_@.?I*4NW*(U*RH> MAWR/1/(F)I?Q@V^CN*WV23FFO2)=7[T#? QDN[A5+WE2Y*O\R;ZV59I9:SD' M14:WUH^!^6[E":!]-3$\6VN]3]ZU\8Y%83GE^MZ>Z$0Y]M<^36^^>K_9;6I4 M2[+NX?TNLRX$O91J?K6IY@3-J*)&OUD2"WNU65;\"4+W>, D%*\*31)X[7'^ MZSW7F46IGG*+\OLLS&'ZL">]BA00Y8+2T$&PB5=^*:Z>XM(*6A]Y4&"8Y7ZT()X?ZF"_^"5SGQ<__W9J5JU-;A\$]\2K2[Y%X?RY6QR;2%MH51!^/ MKN5%2%78:V?3\&Z)LEI/D5HO3.9;7\WT/4:V;.;4Y/:I:667 M0R0/I'7G4;S?.[=SX.3KI)Z^1TXM&&[E&[WOT(OV?8E+\6SG&RM>_NF M2F5]G4VGY]5]I(F$XM"%Y"!:BLZ-!>O-$]C$@;VR0C!?D%*+,%C'6)HY,+*) MT(X@.UE3K&/5!EF.!->M]0Z76>SJ$.1(H5=V:S2PMIN$>]];OH!@?0U>2>= M4O'#X@^7%B2;K:H>F[H9%GH;% Z+6CWU8H;9"FL _S]\!?9FN2!YKX_#2]AH M!"0W%9Y3_D6A9)K)N^IW?O.>139&/ZPL;PF>T&BZ62P T>2UWTYHR?)>7K"* M=201X(,8I=U?8X(4'5].1B>-JI"4-BO-"$WDBN(--DH]E)5,:[\+CPW MJL']S&!?7?CDN5#-]8Y+QC NJHE)/\>%='0O$+I59Z'/<<&AN=XQTGB[I#8B._"$,WGUW& 9$_GV=\M-P:/VWL):JPIGB:TY% _*M2I MU5LA!J94*^ADTLZC25DM4Z26ZBIO%D^:!1Y\ O!$7E:&DO^T!""T+H>]"!QM+MK\,T^=/MZ[_(WQ,T%J!"-J[5)TI^N ] IZS\[&) M8(0_.AZ?C$]'/X^VS:&?K^8/S_/[N^O9R\WUZ/D%_>?KS.F[;+K=().CBIVS#O1K-KA6&^[7N'Y+,WH;Q6X',@ M2(&=240B U2<9-C%U@I#DD/L5K%]!0#IG M4"MI"2TC-$W^@MRRZH1OW7S<-M$VVYEUP;'?#$N7;?#6*()=-GGG$::_1R?< M9Q"\09OHW/-;-CFD5V":5L'NV:J GZ[9K6>67SI)JZ$>4;2V1M[ M0[A^&.,@2M"SX<9R,R?FK0F2>KZ>C-'_A\[4NW;0/[9-C:R\K?T3?!XL+0_^ ME>AC9UC E$N>56YU-5]DYAS+W=D<&([90MK_/ID<5]^X[NG.'<=E _-%>Q#K M6L$RY1%=)PIC0_I1?6^O2!4+EWRBU:VRMH.;SH8#7N] M[N(*&L2D>Y^]#>/,S8S@N]C8-O>WT8>:E&%43/O0=N ;RBIRRB_]RTO?/ CM!@%EK--P5CH M,?N([]16A?K3Z?1,_>AG!:P^Y,7IP(SAGR>A93W)G]:'_*X)%5G LF\7)C3Z M6*?4T&7,-W2Q;6C3JF@Y@GEAJ(]D;I'-&+!YULD09^GUEZ@UUJWZ6<-6/6]L M!#TD3-:>"\R1B??NMOHPW^6G)Z!_GW MTK-\X8N*)PNR8NC31&N]\L)SA&9,-4YPQ(ZR[P=XFBB/H6,]YHYN8-4GDMZ* M,&/70'^-WC)A7-0GC&)[(W_7H )']4;)TC?Y.UT)GB MZ_6&SK-/%GV;U7("Z8!H??:0HIF]/'O<@^$@LKPE?'5!^=5LRUPR;;(?Y"V- MK+2I_8^L+[[O_("NB_A1%8S9LL#51GGY.D;_K8Z9?=D:2#UM-SFTUBS3_W2, M_D_]Q- ?IB9;1#==F+&Y2-[(,4X DW%] LCJ*S"N)Q]FN.(O%_Q^,CD_/E:S M!;C'"9] ^7EBZYT^O9)6HY1!ZPU&?7[Y3+F\1WL2?PU>K'?F =C@BY04 MV91Q>V,%'IJJ<*C4Q%N8,[E+8W0]#<*D[;VS_:J. QK*JG*]Z,+-1&F MJAUJ&Z[$\EJ-57:5UT=H@QBM2:]FJ#_/^E9DGA^^SG22"*4JK!K.IUJ<&QDT]UN#/'(9L8Q M\!DLL6']SEOXP=HJQ@!I&4T-;F196R-8:$R!(W7:BR>P\8,DK =#8 5"E>]' M-1*KD8%].\I04ZN1R@Y#?:7K*NN USP<5P:G8DHNVK%A_ OPT $:V\5FSAIZ M$&LL@F_@YGT#/'8#3X.'&/[4R%^,@NQCR8WR,OU<\K-5^N (Y%\4M1)QRTH8 MZ?T:D[O:+NBIW;ZT\3B9HG"B,NRX!L,H2+UA1LAX.RU_]\/J+]I;Y-G&X^( MT$$-60XWN8[-E0?*D1XS3%\XZ].)4/68,8]L@P+<)?ZP:_:GLI,&-[IM:R-8 M:$[-BY,P2E<V5=9I F -DG#,;:Y0%P/)U>:/!DM@=.]:FA MCR+,F G0=+N&F>X2CWQL-P(>>QB,28,O7*'1W.V^T*R2309)R-9M1M$>Q]7. M]^,C-8[W3+UL?5?/U8A6,T5/Q.JSA !=2)TL3O9W_$@.8#A>]T]1S\?3B:+]0M:_9MA;S9RLU;6<)#KCU+!+Z*,',PX3=^L- MTA>^1[)!,1+97:B]<-N\@N"2X$^A'&VSWBDDFGO#.*Y9)(H:2P_D4MZ\"6O^NRL>_1]_;IAP136LU'4G!O#Y% M2=.;*?[,S_%K"/X=HR9NWMAMHD<-CI2[ED;@39$]M"H-B^,7H0IBE)J7?=4. MM;I[D7N*>%OUSU;EY$55>8.3%Y>$ W;MJDR7,[_A MC,HW8031R9Z8NJ-P8P2JSLDA,!*YJ&&F-D,\Y'+'4-H%%W M.06EY-6+,J7(RO7XXJE>")1AJFL 9;K+F5'FS*"M3A*4&RDC#=RQT\+,=?T? M. %E=9VGJ]F&Q MA$NTC D7!LTS+5&%V?C!UX@!K!$@<,:EJ53O#DV"]+*QB+6Z ?SI)6INQ!L; M1!U\(P\#K(%YD$<8G2_N?6]Y#]^ DX809%RL.C1E *6$B9W3RR0C,27 )1NI MV!LP@$H]A? 'KPR9:SH:_%62 ;"-$B4KL#PZ304GK M$'>1+ >XKXU7K^&>Q6!D'>W-Q/.%TPKT%H M!W!3?.Q0.P3S-6, BX2(G)-*CI568?[XER0#)Y.3VO'X:'S,Y*26-GJ +FJ$ MK=^SO0).[(+Y@FB9^2T$B]B]APN0*(^Z-^S17)G<%XC<&H31X-@\BA;=0(\U M-#RMY3( RP3";: T*JVXZ@Z80_WE%.3VIOSU0+,#!==J<%Q?#7!S:10%_ /8 M-:QR3: GKN=RI&EZ9G<\'H\O5+TXV$Z'%#Q;GR%P-:+EZ.^ 5GU2$* ',YY& MUIUC'D#$-36<$#>*8?(F,FWU;R,/1"IGAH:D]L3C=JVD?G- KN('/P)A[I^2 MA0WRECL1V"<$[A;+HV**1D4U%XR2Z ILX-&F!#&:,'"[6?1WND("P"CU>)I[ M#=IA6Y#Z-&D8 86K8B_/-O:0@RMSJ^):E4[KJ]*V(97+T+83'-FXB#7T6Y:V MG7WP/3OQ^X\X]Z6M+6@YZGE!HBT_W31@QG8T=X$+[[S'P$>G]I#OG'K6<$[- MFQQ!#XF4-JIV)TKU^&O=G3+6%ICZH/Z9'3SEBYN_@(-#\Z^3_=,E=%W@M-LX MA7Y R^F!$_)"^@/9FC$C73;10)S&1<0Q5)-W9QUGE?/ZK))_\6^C#?YF8@@# M^5?SX*+;[^HR]9#U1)]T6NN5%[G)^&*L)B\HL:.=/8:;A\\I3KE9#;&L8&+I M!DS3Q6DG\JZ!9UE_ M&&ES43_=&'AWD*O&IZGF-HZPTMA?"1FRO'Y)_1O4:K@SP%"Q$XJ7?4^[607DQVD:F9830NGA4J6+8%)G M[VH@&!6.=+30^/P>=(0RXMO$-;_'S]D;HA#0*<8LJ-_-5 MZ1CLRZ0JWT].U 2R+4?<*ZH M:_@&'32H^8[M#:^MMPVI]1_+.M%R4J^5*R\<)^/S8U7Q$K*.7>/H, 'C6&ZI MI=68Y8.@/FZ[R&J&%^@S6&+3=2&)-->8;7@&G;58S!:M<+\$!@N8G+_!IZ$.L1FQPSBS??N:?AT3[^X,A?C(+LD\G3NF7ZT>1GJ_39 M$^6&Z?30AC& MZ\WN52?'N5# 1RJ#A*-95[,@L+QEXBB,CE+-4P-#]&*17SE<8N]#D5+/OOO;?S:Z MM^_'!PU..D6/S5R=G]!!^$DVO("?4Z;:X5"7W-5W*2_:-N2LE0MT_A\ M?';6R9^_-5H_![I-Q]Q.#6DYZW0&I7*4%:<1,V)4-42MWP:9*&C@&D06=-GF MCI/QT7C"DJ4#_7;[K=%=<=[(/J=U_HZBY99"VR@Q<0@]$(;9_4$X>X=A&^!-=;3" MGP-)"OS,8E+8H/CG[Z" M]2L(&O==]6)ZPM*JTNKVB5$P^4A( ;8!^\V!$ 8%4U@PXN*0COM%0L(CGJ][, M_G<,P^3(0]FD$4KKB6&7[1F/@ *G-BDPXA\# *C[L]9Z6D++@Q(;QNTRR]\W M/(+ _H8X&USYP<9/PVZ2YU-RZ<% UJ[TRBS+*;-\R)ZL-?BX\=Y@X'N9!=!? M;UR(0Z/>>389/::*Y@+977Q!%X"";2-A$!5F:?2OW0R-_O%]_L,#0;B"FX:E MM?9W+5'G6DS91*)<$$@"CR#'7-TPD.BGH[ MKFY[ ^=?EFL!U[>N06BYMD_&I;&@"9"P"Z;GNM3%9G^/EO<[]&.KH7Y;4"ND MQ5CGZ;()"K*@#NR&31R>?3!$2S!?_.ZG;]K07 3"*,SV=PZ!$-T:TYLT=/R9 MSI1==2#9_5S-8ZJOT$N^GZM@.Q?OM'3Y\9C@0V 91PMF4:NOX))#8PGU+@+6 M#[P!PN\Y@A#,P[4?PC!9?*&7@)7D6T*"7UL?CX%OHQ&'QM65M;%LU)EFVW^O M)LV@DC1-"')4=$E.1OO> OGVGW=A& /G.C'D(UU WTD\.(LS.WEGQ%C?#%:) M$5MJP%DU/,HW U?^^C4;6CBI(G2R7$HO@>6%J6R3ECT52Q-EM4['X_&0V=1; M\HQ0IP;%QJZF%WD T0PDP L()^; ML6-!D^0Z>TN%WP.2G&FKQ7_(AIJ M2,7-H@.7E!DMIJ8]E3CIF]U+^J"L8VIZ8I=GJRC(-_ M1-$\A"G.>>0*6I* <.&M9Y/QL&3X DM9 &T\>OE1LF;?]MX4RNB22V)Q,F) M.JF$:T3@U7S_:00$$5Q U#0(<8#YC1_"B$H02@TM\1<.7\.TPZD2G0@@[&)? M$[@[K1N,L@W>BP.3O$+TVO H_Z(X9=+WQT+:UIM2='8T;T?DJ$3LSD6UH2(/ M+ANCCGOV1V+#1Y(CD;Y8T+OWPS#-1O9BO1/(Q]&"EA23QY0Z*_OJ:B_Q(_8_ M+Q85&EU90?"!#J!4LRFUTL'3K(-Z)(3O4D2FWSSH8:.8,UMC4P:%0962G[1A MU,E>@F )"0+Y\[))^=+RFL/^\C9RL#P2J"[]?$\(%,M.G&Q4(A8^ M;,KPJ460%PEQ_ZW@3N@Q\#<@B#X2-S^D5:S'3?+,G?-:J!9^K_E:*/_>WT8; M_,7DA@CDWS3I:DA N#WE5T-G8SWR<'%JFNMJ*)=Q\+<"Q)%\^?&"/DNY(V*H MJ24M&%"M4Z&KL#I9;XDR8 FHH1T8:FH)=5?4./!OT8!.^%_&2%%H-J3>V)0+ M#0O5%BSJJ#((NX=WRU4Q*(^6FXL:BA*WR/(#A%WC)# XS1EJ^/DCQ.9],EK$ MPB;CQ2>TP+AB_2\6XL"#$3[N>,XM?,<_T;T?R!4,!;BCX#K%*/L=K*#MM@!; M+F0XF S"$@T8PN95=$AB6/[JI0S%AD=:XE.3/86[><()*@C!B+9_TQ(GKH-@ MNSC28_BQ -$X>"I_+?<>*>VHFE!ZS]%4Z'IMP( BA_0#5PL*7ZUWN([71!Q* M?]<3"4K?REBTRZ(<#>C1T2C^?>AHM,JB4Y114:Z$JG'J955DE$UL: 2=+(^_ MA6 1N_=P0;IF8*BI-QWHR'(8&EL$-OTQ48 MNX ,Z:/41DF2F[) %YQY(&,#O%UF^=>@,Q" ]SO/B?']$0BI(>])90<#5[O" M*\9@+HD'&FO;*, X95;]6I" \ZT%@^0)!MIPHHT_]!)GB6CE.PUK)D,-+?'F M6C>["BG?-X'$K7/WPJQ+OWU#$=YV9..T7U+Z'4&!)T M[--J!YGE0_7EQ:6,I,2JD>YU MGN07<[_)>WA0[I646#L4F0%I +55RL$D)=8&EE:55J9-5L$T34H\6+VWR*-Y M4N+!JIU!I@$F)3X[1CVOVDB' >7=#HY_ KS,]$%N5Z;,KILG[FH!.>BTHXT M=/R9+@NZZD!R+JK#2\]A#+DZ2RXA!)"K4#0S3'ZE,TQNO"]Q#M*NYT- M@[[2U@U%9D"XKK3;0!08[7>;4>X&[2L\ /#M"IHH_ MIE^Q]RBTW!!GGR/? M.W$WHB>DK7!4SFMBQ-8I/)NPFRI=(.TUU])ET]1=^@K-[9AWMW[P!&Q_Z<&_ M$B-DOF>=)9DD&T9%XC^:]RX_T]47RBWK, MUJ8MJIB6S2"2;(4(NFNBWSJER=\^FT^D0@6"4:W]OWMJA:"YI!APX1I+. M%_G;M_D".Q;/@TQVRLF;H::>S.AR_NXJK&J_$=G\H![IF>IJR9&N<',3AZ*# MP9OS"L]IYV\@0)IHWDBTEA\B12C -I"$2W*3B#&+'GVTH;KS>-C14.F0*,(J MOIYKC_CL;IJ@S;6O:!>'(4J=0*SI'8IQJDM&)8KUGD&'!R,5V0H/2M MC$6[+,K1Z)YX;WAHM,JB4[34JQ46[L[;7;3GC^TO/W!*5,JAEJ6J5ECV.M5V MEG;P@;O(DF.YJ:=:EJI:4J0SVCS$:='!X,\N=\!(CS/^L-+!VC M.KA4J02-7PV M/AG%H1>I8675O"5^ -&=9R.MWOLA:?=2*F,P8=CE%?0,6&!\X?Y/1%/G*1QI MH84.#24/@!2L4HL*".M'EJL)-782Y[J$7HPO3+?^=H\@N+1":#^O$"H$VG"V M<@"4$J$102=GG68B)K5<0S=&&\#>A"NV\TDY1IU(?82\MYBE.$\D=B-%_\&A M8MXL%[\1XWMT?#R>5!\=X_:2"*0V_@'L6E;ZQ+A9V!:[!;T2CI$Y/AU/QD=' M9\?3DXOCL:+0A?8*.+$+YHOF_E)?(K/4+8\!G 6INE=78;OGQZ;!/-M9?#W- M\RV> %E__:KG74@!2O_UPZL M_#??9ZZ;=1;'B&C,5DTIJA6(3(HO6"]XY=(&L]^>KTD8H3]IA0FWDAOP(@COYZ^[IQ4H?!!2]"[ -4,M\RS0-$ MHT39\[$>X;98M5IQF>@@J904SJKB)!?4AH9F,R7:*QC"B(Z":K+6,X_^1#RN MT5^L80C67275)%>RJ#"\!=&_!'X8TF< >B5#F-%#6 G^,"JHX;K^#^Q]?NL' MUW[\&BUBMZZ,%J;PM&$:<7K+WM?199KRR$O#?NLTR;1N,FA53.,)KZBB7%&J MTXN:$8^8SXCH3_EW1PL_&#G9ET=67L.04^3%Q61:?7#UN7YH-"]D M $E43<@@+[S'%E!I&X->0S\-QBB_C=H@T >6I6ROB:Z^#UVY0JWJ)H< M5O9@Z242WB MBSI%J[UB5;P+.A JT607]%PDW07=>,Y>CTPXB:N'6/G!=Q0ZK5^7;5M2>K+9 MR;,[%=)/.)0:10J=C,<7DQ,U#TJW7%\\1SY]I\LJ<&JY?6F0BN0=1+P2:I39K!BA^E1UVH%M421#XD& M1Q8V,>7GI7K&LCY:010F?:'D0VHJJ"4VC+JM7%RRRR)QOTEC'57-(@'#D$E)]H+,F3W()(M4RYJ\=CI+2A M8L$DFL!D8N*. OF--QXL"-%DV M,]Y+; 5] *WF"E3$4)1)DDD(%:848]^SJ6;9AI*F(DX74$)HL#V%0\FBRX1W MWF/@+U%KG"XG9PVQ4/(V1]!#"DA;5>Q-LH= KF+/(K7/[ #*^H,OCY8>_ LX M,\^9K9/[ !S<$#@[-)KLL!*^H.6@YP2]>/J1K1K*7D!&R-%&\>N666I9K2#> M%TX,S"#JA@%CD8&)F_K6'#J%7GH8.!.USH 814X-,-LQF&J :JTW#!PI6'#- MRNVV$>&8#BH/TOGQ='IQHB$!I$W8O54U>*/,/I,HJ>97;[1YB-.B@\'?Y.N< M1$E_HK6P@X5H/76C)P%;HC1NK^:?;>!9:&DFA&ML+*<51?:_UO'I19"M:L_T MR*3ZS0LWP(8+B'34M()1RVI%$S[0*F!S23C,^2 3$4U^P+;"B)C(M;F@?E!S M0=8,-X.(JK&6;="\)UPJ2_I*6<$K1*>>S0RR8J^_+@SK/= MV$&[MED8(GT Y\5Z[W:1T-22P02DTZ&^3Q:E/2EABWIF=.(QW"?:3)7);, O MU/ED5 \]]34*-3[RVQ]WGO 5K&,@S .(YGBBRW+F ML=*F4NV3//U4)36[6-5+>0@9" ^30^QZ,3 _F+A,A8=-'E;M2 BQI)I">J28 M.VSZB=%=1LYS@^8W]>DV/XG95W,9+2\,HF43'O?00MM5U*D:'*3;7ZY&RJH] MQ9'@#Y64 A27<7(JYD) SLGSTG)Q?)/G%0#1/:Z'<6WVR6XM_\F>CCK*S:)C M+9@B9>+"EN&H-? J0TW]2,8--]MDPR*WA(=M]0P=ZLFSG7?YV5.M>C#T81)< MLDW];%]/J=",CO:*T<ZU>\*# O-%@SJ:+8(JA-HES'21^+$3P&N7*@LT]ET M>FX4> S""DS33; QU<0@/Z\D%#44)6Z1Y8?\0F><*("O,6[X^2/$)B\R6L3" M)N/%)[1.X<%NX\"#$8ZDZSFW\!W_U QN>P5# >XH.-'G0P'(OX,5M-T68,N% M# >305BBQX6*G2>P0K#R7>=NO0G\M^2-$AU-2@W#H>65G.B\(&S]O+=>&;8Y M]5*& L4C+?$*7Z?C_WU+9,WVBEHBO2\+$%T+@X_[0)2;%IR37DE+NG3$EX,H M9-D';U^>V7:\CEU\8W8-4*=MF$"'?G9!@F'BA1!$\*_D]T05$>@DJGFSB2=5 M2Z;DMR-*38Y 2ZMB-J.X)1?U.DEMHN[FZW7:>D>I4=;3.=)3]1)YR SA%5S0 MVR/2:]G-;)EX/TV-':0#1E7?GK-8R2$WO3$;E>:EB3 U67E0,RHZRJ=[Z4["WU(8P4 M8@/GSGL&P1NT2:^>VRL:C'IG\0=_3BYNN0F35+&(D1Q@%E1"T##I2S[^*7W' M YS=,YZOX!W:/E+<'\".KL$;$J).EOY?%OM##A,") MT@YF-O&D>UBQ D2,^E@IH15(;#HF8$*11WY.RX?GJ]DRMLBWB*4"^BJ=HL3* MCKA=()V\#25E71[ZI-9-7(%>B/U-FJ)2+^L")1<2#79+-C'ESXCSI,D9.B<# MNG]%8T$ML6'4;66B9)=//BC8%V2^>%Q9(0A)F8VJ9;2$HO.,QRZB?/_=8C?( M.8CJI;1"A%VA%!"4SE2W, BCI!_D2:I:1F\(V"64BYY=7;\N4$:"TRZ?G%6W+!/N$\UP1UM;MW[2"4\A"21=- M4$!?!4@2\_84_JH5FNU@- "WGYFP$PI?H0?7\9J(0^GO>B)!Z5L9BW99M++= M-\T7]RUO>^B5M,)/G!6?7V9!X:O5>2!!!DT?8FZQ$$-@9P"2X_ M'GP/W^^CKKHX5&U2A,";SNT-AU)T1M1I)58EJOT>2+98[)F_$VB^V$J9BXTS MCZ+-*.K@E;_>6-Y'H[&6OQGSB"-4$ZHWYZ18O-ABYZ/32&-RJ=U?#46W1<#! M)/-Y!M8/*\*YB=[PM^;AV@\A.L*'%JJ;OB;#+J,XV+[U\1CX-@A#-+]=61O+ M1IUI-E/W:K*DSXNQ'@YR_0DC0RN"WMPH?%T: &N^P$&["+N170'S:,$HHYY' M>@Z0F^W##9LH @>8ZYM+D7XJ4'W&(45: VA%0^)\6T%[57Q?\C4.HTN ]T0N M(.PO6.N:1XG^XDM-BM/)/Y]*D">0[I%?_-0S'8>Y^FI!#^=2S)^SS/X=(XTV M)X'@;\5HTO16A*#D-;7T#T*98WU@_=SZ 5Y6D41/<+F*YHMOUL<_@>N@WQ<> M]#22AJ"V%NT>Z]YYMAOC:.J- MT^L\6H$@$_ANO;%@0-H)]V[4/!))U$O.L]XIW*E+F681%7CC*-1B)76)HW" ML1-4)BS>/NLK9I##IH9MI*H=HN'E1UD"^O"B!F+8T]>UG.0Z\*.^4JI4(,55 MHI?52,3XWA1JMAFWC$AY0]6SM0[A+9TK( ]U2L_+=_)(L#^3$@O8:6_! ) M2<7(U4$;A[7:WK>\PMEC#[3DYJ&MNW0TI'J%=_*'$+MLTY5S984K'$0?_0?[ M,[Y9+JB'4Q?6[H$.!SH!6]9S87H6],9IH$2?V;8?(]4\^!' YM9[W_+")V # MI#,T69'ST0C]QN< $#T .NI\Z472-OV)YN$_4&R[H\UL. KP]S)2E8T&NZ M@6Y:DA&-'[&GPSD=V_TGZ,9F/_DM>F9F5[.@YX2D/&UJC,>IO/,%A\9(#T[Y M6_ID,Q.;16E6T&O&8B9*U=/T/;1>H8L0 4(XW+6Y3R(S$5FH>@4]QFR;CC7S M^+R%'D(1]LB8>3$^%N(%^O-HVQ=M4F5R^NU59@'4I^]=/0"/3TZ.C]7,@0?H M)JIXAA5!%$W\1_*#N)-#C,R_,7U81(7:#K[2_: M1@&S_45/],@CT TS ?ZB)\+CR ]@5Z29OZ@F'-1K&5,(!(._Z+'ZU5 /?]&# MX2Z1+9+\1<5/S$K\137AATA(>OB+'N1J>Z^KOZ@FW#RT=9>.!L5]0KD]HRY, MJBT468=I8Y!(L_ "D!5^L=YYW[?RM'RC!Z91J7*&E:5N0'RCI=J/3SI.P M]#-(W!C BZ7>)Q/;MPZ=]=C7O7*:V':]C%T'DS-9^$,&_.ER53<>3ZE79[GLC*_D@^EWRS9'E.2-K]]615?BL MTDNQ+[[O_("NB[12U=9.M): *5QM(+*=CT_'D_'1T1GZS^G)V:GR[#\.6$ / M1N >OH&:"+3[+;Y&RN/L5 ^#<'_P&DR$_=6B.IU+;W[=DJ6^_/AJ_>$'B0V6 M8B?D:$%+9@E@09U:?96BT[F8(LM.DE8;&V&OX(;.%DJ- M Z(+KQ:(9R1QEG/+LY8);W$(7KP%:\:17O@ (.R@ *(94(F)G+I#8MPQ,"U\S$HXZ^ M<]76OV&)/Z>.9BQS?X]]E-%4ZJP 43-4(5B"&H^8HO+P@:?B ,#I$%/+(-3D M$%/\Y,A?C&"MS '[PUR<'IVI\3VE3:L%Q+)\6P^(!2\_@/L&OOI>M.JPFV9H M5,NYIS^X?$M:1S69LA7G4\U_ RMX^>$+86/6UB<)N;4C:'4<(O?0ETF^@AU; M^^1?!_U(") Y"/[=^C'I:J9;8Y_LXU>/A("7PR ?*BN.?*AL6;OGT^E%-2SS MX9*/I!XI<2BUI]]L@4:+4 Z66OPD8D<=B0HJJ>U42$XZ0*_TR2BR&@3%;E1O M7.,UG]5"+];-9X=K&IM,3B?3ZMW]@3P5&_S\D(-7GQ\$J&7P3\4TW3CU<3VHA F)LWS-K1B3M"_'B'@3HS/G7DF<37"=;+.(0> M0.RV_QW#,(DP05DI"*6U!%G*BL"C (%OO*3 C'\, 'V>;ZVG)?0\*+%AW"ZS M_%AXCR"POUD1"*[\8..G$5C(3_K(I M8.![V.G(G5 MKP8!0#2A2E]4N7C"K!6=MOC2 H#HSP!FO.HLX%2"*5YS$@. &$T77BWH=#BD M:.2^Y>TN2U4M6;#O'09=&X( Z9B9>4XAI2CZ6[RNZS])\/RRLKR6IW)[[8/I M)%:O3#/\PW/%4*#Y!N!RA9_#HB,)6F!^"\$B=N_A@N2ETJ?)LJ:G>EPBB)Q[ M1>M&PGY1NH_;/;!"$";_FXW.TJCD0H"JE=:J9"6([A9WR4?LG8AM$UA6\P/<>^WYJXE%=<2.09< M&C8'/!(."E;Z%3VQ@I;0Q0'666:! MI%E:V1L8#/(4Z.K8]Y1?)RX<7!I933C8:6%1J"^&;*_*$LYIENUU.M;CC;%" MMM2I*U*Q.LV?^TO"K@NM1"+9G@7_2EDM:<" )HD"+.)IXG5$\'[. M5A!O63#Z9E(UN3Q3BFN,+0M,.X@[":HWRJ6-"7U?DLA+84#'ILQBAT@E2(B' MO%LGJL?Y?:X3V#N38ZFH%]>8,YU6"T8)30FP5YY"G_#=Z7SQ6S:9$JA K:,Q M'QBAK3.#7V!!*TWS?-%I7\FTM:B(5@^MPU1'8PITWUTPBBG*K:40.4?U@:+H M\=-RY5XO6582%O!$/1(SP![$R0__$%!.L)T^33WHPA!!,JOJ#G M'7J=PZF:289>[$5/5@2R5ZU=^-703$7!T^GYF;'\8A5?2JC_';].]_ND" >& M\CTJ):#;/B?:-8]SSKG)XR(;?4'?IT3HD]^;"WX_F9R? MC*L3K(KQCS%B&N&XH%9CF$&[;<.6*),FYI/^KG@K/XCP^M:&=;W@\+%FE$F3 M4RK3N0,+$78]:E J#Q=L 7)*>$J^6X./U=BR6H:[0:.<:7#WSN2U]TPDJ?S/ M\6;C@BSNIA6N;EW_QYVW\(-U^FJ+4P@H M<])NO;.,I_SF7FG:!/B!-TVGAV[-UDS>L[)[8A:SYD;OVIQ6(YT!J:9-ET#)I3H[JK&QL.J'GNV:.+]Y M3N;\ 9R;=QO'B5_C?W5A$:DMPRG%)7;&KXNN_)JF_/+ THJRLM*]1K$G?VHG M17_IXBQ*:&"XO! D:T:&J915ZE2#&R4)CZ2&1),>\N5&QK'BB6(HCQ$,HD6+ MB#DS^MJ?L^Q%J.Z7&#HXUN"^KI_22(5FWEWTG2XDU J8%H=#X^'4_&1T=GIZ?')^.S M3AM1PIXA_?"]'X:W:"@TK7TU2&_1/^'2>_"CY_CU#V!'+W[AKTW["N$?T6KV MZ(IA94.R'R69XFO:75O4$=BE0-?HAC* MCGEYBV5-GR)- M5UT=#H5Z5(T(NE$;(O>^0B\Y4>8I F>>4V[EYM\Q^O-7$*U\]) P)L2;=Z1>)#_TK. C":>5Y/SV M(B216\BE*FX"9/VB80Q5I;&^EX=;TUNTUR<8!?$? _\-AJ@=M)_N84JI/6ZM MF%*VGQDA]1^$\>3L>'JAQK">&8MO >*FY28A_7 B1/0M%_4[RVUT"3RP@&U1 M@+HT->RI)8.M/K4(4X46L6 $DZRF 28^U6II21UAP+=QBDT=!OJ49VJ@JY;. M*'K= ^55!Z48Z&.>*6.[ O#0BE"IK+HS/9*@R^<3CS:DAJ]20Z3KK.,B-E:= MVM*2=OUW5N)T(6'V4L\SOHF+K;*63!+'@U:.=9C)3-IPY=HHJ;@;SUB:.%BV M=5:.@=NP7"<%(Q/2#/KO%?HE)%X"M54[6&YQ*43J;DQ-(""^Z6I(,U/_'97B MC?K>C=A/P/8]&[HP:6R^V!E4<)S*%_]FL0!V!-\ _B>O:;L66JABVBY_''L* M+M+/XQ*C 'UQ%/FC: 5&(.]&^ENC#-^3B_/CL^GQZ<79T=%1S;RR'Z&V,&_[ MBO$NXS,K'I!CU(>/4F&"\ ):+@Z^H_&I'D%P>$&M3S6R-&.*[R"+?IJWB37W M5A%-'C +N51BB@HC+[>>W(?H+((^@B"M84?\"1^/4W>?/RM&,8; MD5HPQ=./11U7*\M;H@*Y.0852A.I_FZY<0J]Z_H_TL=RG:S\QF&[,")(0$V;LM[0%$][ZWQ-D%"N-I^^28UWI6B_M: ML9ZASXU<]+V?(_3!D9-],3&=N?DWS;*4;>VW9Z?'YV?58;.G[!EYGN<7Z]4E M+5#E0D,<\355UT<\@Y""3%&N.H>"8J;4*]<*0[B =HK3.R3>O-%K:/=EI/2[R[0,=% (KL1 JHF,_!$K.^^5765[!^ M!:0PIPPUAX8\!;.&^;^C_%JAG\]Z:.L'FDP=Y():8MMI%F>439!A7^%B7CWD MHATTH[-I4Q6]"4#'DNP,-<&W-MXK*P@^%G[PPPJ<-DLZ9RMEC9[K M\:R"FP(,+.J@!LFI@*JYS!2Q;!>7S _#DG+H 7#X&SH8KG73A"GWU35U7%D; MB*UA566P$HM4_V#XQ*4 J>D@U"2=;YK,\]]E[I%X(@_>$C_:F6T'L>6&R7^1 MM+M0K1Q+9I?F#X:/(O6C7[()PF4U@Q:(,8*;KJW[M&<:T^0H1&K:"4UFPCOO M,?!Q%/)\)XM&X#5X ZZ_69/#[?(V8QK?A.I!:O8)36@VCU9$\V-SX8.A#%E: M45?).A.#V56&V['#8,HPBJYW]HB:5/>6YUQ:(0QS%]@:%YCKF<:$?H)+2!PA MCP7/D15$\0;GO&?;]A8K' ;NK1+W3@>A5Q"$HN(XKC?*JKE JJE:3(=%!FY9 M1>5^Z!=[520-"B'N 8:C0O2H\,8.O%''X^NY>$PQCAP M,>.YEJ45+0G4C0>L?.+3A=2X*4<:$>V+[SL_H.LFH;(CRUO"5Q?D)H'RO[FH MQ]'N 9*QKW:DAECI1,_V77)!_+(U\PDN5]%\\5O8S+/.[1C)*[':,/C*;.M= MS7X-UE3%2!)U%ER+G A2*=)^4B/4.EBBM!SB>E]"-89MRN>6?3XNFCD.3&6X M\Q9^L$[]=3F?%)VV/"G:?614^(JACXC.Q\=G$S5/#?H^(IH@@AYK,,)Y55T? MVPQ"#OX1T59+LSA:)5,(Y>U0!ID">]N\()ZX,/ZJ.BQK(#(0 %PX9-';.@@\>_%#[K_XD#&#K0QD+0GY?1 M:YG(B2XB#_]5DO0GQKJPH]-^H8N@)G-"X%-D77C1!6(NHG397!C]%'D R/,M M'!WEUPI]04^1=<&VTVS/*)N@FP-U$SSYJ1H!='*%LH*0AB;5*S3]W#'(!."4 M4\+90+I1]\8*/"1@^ B"YQ72))\1]V@\J1IQ\P9'2'>C$#>IU&);E8]@KD4? M_]Y6Y?MD?*(R1P(M'2[5B$.K6"8R(N%88=P #A1(9AQN604-6@YXL7ZYUI):,W80ZY>DLMX66UZBFM/I;PE,X[=;6W8@Z+1 @NP85% M 9&^ >P*")P9FA*M)7B(L3%FODC4&,[C*(PLST&ZI=&(JPUS2-1?; EOI-6L M94%B3+#SJ(H@*]QE(\L#ZDIA#B)&=-.O&>KYM!,AB($O<'681O%H!O+ M=>>;=-?I.=^L(+ \XH.%'BT>&N78E=#WR;8>\QQAOK^&;HQ^6YOV^19+4BOF MD$J$X*+>?.\]#<'6[,)G33ZN6Y.W+2DU(F][T?9:M5JNY''W?*J$EZ M4;2U;FV-][:+_N-4ND,:)>];6*DKM8%DWNAET'$8=X6Y-=+7=VNC^I MC["LR1'4Q,4^Z\\3V/@!OGICN+ A54&3\YDBEWI[!9S8!>A\5.E; ;K+C^R/ M5+][_I:T&M <.#5

(&V37& 5L;?/!A10""5-0,.+NF(5Z'J5O2F_NJ-4)0)73E-1 .%3D?)&)2@"\ M5,9TU-N%E1(8KV=F@=X\^!+X(0[AMH D,W2AA.D<:!/5% ^Z+\ #@86#I,V< M-?0@-ISA_-993@02$>BUC"='!_'-<)C[@C;0V-EK[CU;+@CGBS3P&=8$_N%N MO;%@@-5\M;*")7'_P-N,\802H0]!GG2D1:G3!:.X)V0[1T,"IQI*FDX;5I%% M.<@UA@E3$VGUP??\LO3T%8M8WG2.\ DN(:N(\F\F+@%2:#'PW,T[6L.1 M]-"S@H]$OTAQV"D>R>,FJD,R@9 >C4W*%\LXG4ZGYQ=&$73?JA/E1:?19+A5 M33:T+]'^E'R*(Y0^#)ZQB2TA*B-6%)8!IG037V*X;7DA1UW:#BT4=G/KCCH2E:F&=+!5N6;O M(?3"(3*-RJ/>&1VTV_DI>@!M.K,ZZ"+G6.]L#QJMJZ57OB3S2K&,Z2QI%S:G M@<@D#JII,+-M',0V? (V@&]X#4=ZN(H#K'@"*VA5RGH['X]/JF(-FR3< M$6N_%^8<=N>]H9[[P4 M%#H4&3%"K]G F+ DI<:]J%IJF18%4MBSW MQ7@\T>?E7.]E@4OH'&PY^6[5[!Q3!>#@*(4 _-L[M$;S'LF2P=^2J=02K9*< M>'(2Y"JRE=&2>3?D"C:6'E3$^UI'21=ZI^JBIN0/AG!8)^!EI@<^,O:\U%LEAQGX:#J=7NB0CK0K:G4" M4.449#;I=P-,F+W3=R3?H -R$4JFUD<0V!B59=7"QE?95/@%:$'0#% CAP)C M/LV3BF#:YS7E'[.9\O.>_&VTP7U)[/4@[\W?1AZ(:-9]TTSYD^,C]./!F_+U MG'6HB,DPY0M=DX9ORM>$%8)@[6;*;Z'$@$WY:M'EQZ";*5\N?K),^1I@PZ5? M!E.^3D"PF_*'#P1!I&&9\H\F2&$*@VF) ((@DBQ3ONZ6+]60RMM>]%;)X"U? M,I]9:<.;KNC6B<(MNRRKF0+#R,QQ8-K['@GC3MA,'[MOC0H?&X)-@RU#V>3H MT#/)J9X<.' 2;[\0/#N8FDE.-4=$P]U )&Y=F)-)3AMTN3$@;B I4@XFD]S1 M"=HEGVH 2ZM**S=8K(+)1Z)3\KC!ZKU%'LV3QPU6[0PR#3!YW&#AX)+N4)/' M:8.NO U=5Y4,WI)T#5!/;9A9!38NB-)'C[,UUL1?M'?6+%7UY%%7M.O$Z:P# M"6=(Z<:E4JXUG/"F);=26*[ 9W0Z'4^J1B?]BDB%&/.+5#,$7U:ZSDRG$T07SK](Y6E(Q-MJ@>+6DUG4@ JK([ M$:BDP=NLKGP/NS*FCPZ>8/CGY<H'%@CF#['LP?,6O=A8YT\=OB^;1"@2/@?\' ML",\!FB& ;:J P&5 8VJ$:&'_*H7 M);@/7&]3\ :$&^H9BQ*+/**M]4=QL# M=TZS3I<*& M(NY0Z^1K=N&@V"* -HX]&X(CE3,2/3UB=#'U?D7#HB(Q#]%)A MK)4S&48V8>6_/[[SPC@@0M-4Q$14F.44^ B9 ,B3_V&Y$:3=*E6*& L(BYS$ M%+*"+4:)XUV2+IN,2W-)8^'A$)>8!55%CF]\U,@L#]3UJ%[01"@YI164JU3T MX8O;Y'1/N&+LV9I6#)%GC).AI<%?1);T0;3B%[V/9WWOO&6JC>'O>-7QA*'<85Y/'14;?W_X.X@ASDM$,%2L(5 MI-BYR? KR$$RB@QZWRO(-NYH00,)5Y"*:= +K+Y7D.(QEWSII"U8#%KFO73: M&SA];:L&@<(BI_Q;P,? 7X P3)H-;P$%E^:2QL+#(:Y\W_YK& #L%H [@I?N M?(DFHT6O82QJ'<26'XQXOEA &SPAV2CQ;"MEC$6(25#B)9]:DVK1 7R^V&5P MI(S#EBH5Z:?3J2$P=Y%;_DTB3@P>HL)/P$UZ1@&.4-18P'CD)=XPJAV>^:/A M:W3&=?TD%DC[0ME:R5C$NTE.O+=4C+WE7(/7B':)22QG+L*LPFI[A;G>Q!$( MGN/-QH4@?/87T0^DN7NT@Z"/:K::Q@+?0_S[]>;6R@B5U,J\6 M,A9A-DES,'5S#"^^L*2<86NEC(634=0<3XD&H<3IY0H1 T9H8P!IECI"46-! MXI$W1ZIO4F5)J=OU= Y2S!5YUV0RM#1XYZ 6\0DW;BVU#" 4'?;Z/5P7C0PQ M4L%SY-M_7EHAC"RTBZ,K%T?E$;,W DS7Q2UEUA[L$+# M*'Q&VTF0B/AH?:11U^BY0OHU6G94.3]"/Z@)NH-[6*/5+ @L;YG&HOO8%!WRXV+1,,[B]L @#L/G;Y &#TA11"T)_V[Y8$_'8\G%^KW81(X M4Y\1U:A6BZQ<8H;#:[ON7EETAY<@&\'Z H+UA#8.I'SPP ? _G0J:"O:]ZRC MUU*0J^UW'U^HN##ZV-=BT/SE Q\-"I1+] OY'!; N89OT$'[[WT/BN)W/X?$ M?E5+=+71_R$+X?")?SM/Q)C9Z,R-9@/>HV;M@0KMJ(G_-$K5-K*R#WZ>*RDC MX'A\-#Z>JL[OT#;80M)H8\SZT*_]TE ]'H_'YQJDUI; @8994*H*!_\T)IW8 M[M#$]8YV__X=FO'1V13GV8D^7M!W*<]C6*IJR3NYE*A3L+.B='H\TR8$]0D- M6V4MR=(9/'X>4+2@$Q/RER:%C1$]3A6I_"#QIH!41YQ/=)U [GQX(%TBBVM8 M2]KL>TV1I,;!7SAWUDLZ.L-Y'(61Y3G06S[$E$E-^'?T9+4W6 M-R" OO,<64$T0(-=IK$OJ& 4WGF/B3!? C\4/F.3O_1)]GTHU)@K&[Q[2C9B MSG62[R<5/-%16-A:A3?O(+!AN+/!U5(A\C9TX$05HZ^^=R33E(<>6&*ST'"G MW%L_6 8Q4'^;!6FKJK;H2QI F[][H&S7(EZ^]Z3F#(H=-IP5\-=?;*^MSX% MO?).M]PWGAE$KSBQYJOG8P!MX??D?%\O@S@9CX^J%VN?8T*.DHD/XTT\FQ)- M8(TG'!G#15P//H>,2D4+"E.@@T-N'RWFBE(Z9K@Z\3EL%.M:4) 'W4=.W\.; M@KU:KSY]CBN]5"\H[,; A]E0#S^?%H$]:5E42!)=# 5='N:TZO$)8-\3]/NK M+(ED;+GXQ?RX\."A<5$T;]U9^X.>D.Z0UZ(;23IPWR5YKR]S[' MQ?[42HZ@(V M4?0*I3(=;)_HS!>9BF;1M16A?R;V%+1W+>MI6VQ[4\O[AN68 MXPW+MVJ(A 7J[N@-=P2G9?&S8 E6-(I68.2@?N-?+W'/D\0K^+T#_VNT#8'K'E-NQ6B>7TQ'Q/>TT^K0@XEI MCF+]H=71"F1E=AQN#4G?3_'$RBAWFFI3:2RK)P>X,:GCRBZM3A:VQ]Q^G9P5 MJ&%/FHIJB28[$G44F874"40DZCJ+ZT=%L%;../C8)-1JD>WMLB#:\^.^V1=" M$W;H<>W26XV"HHKJ=J'([@%3\_=_\2/+W8M/$\NG]>2^'"Z*=V_JK&%#[]F[ MAD*I.$DE?\1>45MO*4DCA+,7GX-%M;(EA#E3Y!?(Z\9WPNS&]^E;1_:K.CV: MG!R=?OK6L6\83]"&\43]+">! WOSK7;E6&"(EX1F(Q49:+:\E MP^2"3[&/,FE'*S-,H<-4PVB]H)[(T@JT[X[C4[@"98[WL"[ZPHG\\.H E9.H/'SX.!+ F2L@,,!&^N MQ8%/]#VXH21BW'DV4@)\ ]@'$JGG@N*40JM@+GX=9==IODY7*?H*7BJC)9K[ M7JK;-:*3[TEWG>SD]!Q,[ =KW>4Y4+]/:NG2/\Z>(SO"Z/**L*E)/GX/OC>S3NP8[RB7<, V*AB:@_%HI&Q9JGW MB7L!]\X*D_\*"'5M X*%'ZPMM+E)[.#IE1L5?EJ53^3+R'/K2N"N@@#Z(R?B MM/*?RG1*VE':6YRNPL&,"_G=C.B#!K1\FZ_:A1$'> M9<60OSNJ5D'2?$;5+]O@H3!]WPKMF^5-DT#7V!23B%S.>9?XDNX\PXJJ)+HM M<;=TX$05I#!!V]?FZ;<:$'Q/US5NTBYPFL&X><<_@@<0S1KD"-VB#9OUN)Y1$E6'R^K?X=_PLZ<&/_AM$3\#VEQZ.6)B> MC6[](/L5+DP*VL# MD2+2X]83HDCP!O#8OXUQ;D+LMHP]"DCOY7C;.6R:BE&7J)1;ZNA7?J%&.Z@V ME#QL"K$J1%1FJG)>MIZ7@Z1HX(X#T]ZAC7J8^2KNXGL^@7_',(11/KN3KZP[ M-728?!*LKYQN(N_DY) M&3]&/]DG6'#^GDOI((G[RU+CGV MI--]^GMTR,[VL^0P4#R-'"8O!>HJY^%PKU[8?'AZ.4L=-LMZZ"AGUW#O*)IE MYG)J/FSV<.@D=ZA79MHG/8=W_;"VU20>&LFERT)?(*&KL45-)$(7I>1,$&EE MEQZY]PE$,'TT<@D\L(!1R!>U]WP\J4;MW34Y>LW:5!JPMT01S]EU;]?KENB\ M'"V4PK">G4[&Y^>*0_%>(P0\X&3P)LDC=]T.V<+M,K2AY3S1%[B&E:&W3@8? M(W>G12QT2Z"FYL):DJ4_M'6Z<(AO("^H<9E(Q;1"@2//II5JUN+=""5QA8U_&*'E@9"'@K^=?J(4L/@F56?EG>S\GU+5 ^F MNEJR1\:RU%T;$K*3*"%1XN -7V/$_\%WB+X8'U#N4^CW MNZ^-"I]3>KZ^2YQD4UVX;K):%7]%/UJS52X?SB[&TVDU*]5^1-T^GIJ%(4#= M\YQ[:+U"%T&"4T$G 3B&01S@JPU4X,'W@OR?EU8(J2=N8>UK.0GUP+H^ M"\E5E:RX/,T,#(.HP#[TKQWS)R0=J1HET3^@':>/2I M_%4K4-N5W !(E_/(GE#X"CVXCM=$'$I_+TEP,D;_IS O(HMVRUBTRZ)3G@81 MTT;;@5#H-[1BQ[XGW_UIE'+XE!$MK^A$-5M$(, ^[_$Z^>HE=%$#RW 68'?1 M$**.X9O&,+JNO4SIU9:QS*(C37%GZZT]0:=0^=ZZ^.7Y?''K!P NO9MW>X6G M_"<8_OGB7_NN:P7H3U<@0 <_[PII%J#S8O/M?J>&/IDG5G52(R\>[[YU%B9*^EBJ1XL^%3@N]#!WN W:$[ 6T7"+$81D@65N9Y6^(F8-?M)+B$(O1R[9_I@-'DSL0Q ZG!FA6#F>;'E/ENN M%1#L3$P5!\4*.J(59G077[9CC)"9POI86UXR<3TEEICY!@0)1N$C"'"J86N) MMI!/X UXS39POA;,Y8D /8AUPU-*F"1KQV/@+V#5\2%^BF;0>8+!+$^8R180B#,Q5]A!>;8$0U;>KCY@&0N-)8UFB"L$LL(0W''AY( MN_C _F@%T<=+8'FA92<++M=M)^I[PS/II.'1!K<\B@I-*[WJ),G;XL?=7DWI M(VA2]RX_2G]A>@S-T59Y%$S0**B>TY4\1V-#N/G9$ M^X#2W[4$4QPP9>-RN^2#O.O>BD6\.ZB4T IT-F (0%+DD6]FQN>1Y-QZY0<; M/SVSDJ\%R*7UA8.BWH:S&8=T.CEF7\8AVAR&X^KF\'82)9UB671E\P$9)D]>ZS+ZGA7$YJV0_-&N563_J?<\!"0'@)D MT#Y7-/TI)HC [K9W5Q\Z,SCH:X%K%&<"1QQK:_:XKWG?LNXR)QG1PDPA!D1P M)FJ:W["^>0?Y.\?G".$&/"8 ;R-9;O#P[:ITYR2 E+TOM%%01,30 \U]ID@SHPT)E<0LL2Y2F;VNURLB. ]7^T\GB^L0/M^M MTG?5S(2]\ZINI7BO(-I_DRZ".;I=L$#W"V)'Y;_ W[>/P(>D[DIE=U16E4(T1,#H?P)DAWQ$0KEVYH:_>4=[W!% MN1^G:&!CZC:+3-L,,I"CG89SIV$<\=]=*;7J-$G$#JT.)3*V6SDZ:84-\_0% M/(9_ :PC1+GAB7%"RGRKF1W;.?'XF28XF$/3\],\FJPB1;(D"-8$3Z2O+P$Z M&@T]YI,>*A9..XRM97AK\&J=;Y*]M:ZNNI$^G:*6&0J4UC=6$/)EDBL@<=!%G44# T2[DE +F) MW^(()%'IW)EF%Y\+S^AE+CT).BD#8>@@G\GRCR=BV F"YKEOG[V MJNWB)!BF#8A5,8#)DV$BCT"_"%Z!S3L "88P01=O$833+%VC\7F+:S+BI^OV MSVN\?JD.4.H=>4TFP[ 82GFBNYKF5;A)$[RM+0K:=Z9C!1Y.6;K)7LDWXP19 MOD2.A8\I%X-J*,G:??QGX8>AQD@Z[/J6[R%>/F\FBU^0EH>9/.&R+" :[PJW MH+WO3AYV#]!TD%>/X4IVU7OTFI^V\&%,O+2TUFM'MGD#GC9X68(S[1%1XIBN M=]DJA?EDDF'E8QRNV/^%QYZWM=#M]] %@[.SG@,R4./[#BLH,:*.W%$7"Q)\ MLR-RG6"L0C=>L\LH*'G(]:SK$W E9#1[1AZ!S0-NY>N\YI(>"CEYK"4/=TF] M_CV*8FJ>AJ2]IRUI_Q3L?T@P/D6M>_]R,"R73NFVUMV10479%>K:)SX8G==) M6M*ZM\P5Z#]P(PTBZYDB\ MI;FM]M/%N2-D;MF]-L9EL\AT7LC,V6S3G5)=)$.MDTY33$P'Z3/4)M!XL&@4 M8%#8R>XADN,4\* JIPKK;3_QS4@TIWW!M13B9@B5,45 *V Y.A$G)? M".:?E^G;%S"/Z*W'"8R1#8]9&.%04Y;ATQ6R*Y2*>XQ&%_W^13GPP3H-6*_! M8;?()&80_O,40O#M'U!+ P04 " "2AGM8$\*W'7NU P"6D"@ %0 &-W M8V\M,C R,S$R,S%X,3!K+FAT;>Q]:9>JR-+N]_LKO/O<]YX^:S5[ RIJ=9^^ M"Q7G$<3I"RN%1)%1!J=??Q,<2LNAK"JMPMJ>U:>[1(2,B">&C(C,_/O_S74M M,H6VHYC&?_]-_,3_'8&&:$J*,?SOOVDN4RS^^__]\[_^_M\8%E&Z:;82D4S1 MTZ'A1D0; A=*D9GBCIXB+=.R@!&I0MM6-"V2MA5I"-<_(?"?\9_XSV0$P]:/ M2@,'_=(TGC9W_"2>O\RL'^Q_'?U%)GZ1.!F+))Z(^!,>BS2JSW>N?EQ1!C:P M%QLJGM#3T,L2>/0GD4PDDR]OYZ ]5408*9F#2#'[%)'E&$PFDQ0VD*))+!:3 MXE@J&@58,A5-D@-2EJ3$>G C%_$*\/1 M7_[7 \2Z[8--SW#MQ?87P=T.%'\.S>FO]9=[(YD[RM[C9]'-PXE?W6J%$T=0 M!YAB."XPQ.UK_,=*[OY;UC^+_UI]N;E5F;L8&L#>2S8#4@PT?NC+X)=K \.1 M35L'+I(8>A 1Q_ D]LP(QW8/>8LN[O/5LVT$UE/TK[_=^XDR/\5>(KHSP,WM M-I1/BH/ZA;[=W.BY]LD;4[_0M[N\5,Z(^"7O):@<)P]]L4^98\9((G'NT:L[ MUC\XA@,BE4K]FOLPWSP5BM+QUZ,O]I%U -V]9_K?/H/P'1A$P#I.VFNH(C&2 MV@.RO?_YV%5>#__S]:_/?U:,&IK3XYV])F48<=Z'!__[0@3U4#,PU MK:RPJ<.,%[94/"<*S<:RF+83Y1DFG$&>?)4#1$ MH>TA9@<$S5?/H!VA+@L$*40)P1>U4)'9<;6;G]+GXB421 EMTRTK& 7,^#\:%L2:-4VU^^%ZBNCVI( P;Y(17TNT&'#9* M:5S=(:J&?*>MB'M#RGIV %B!$-:,;IF[;&<+O38CQ=PF _,PZ7HC-9;L;D>( M[, 3@X;C+C)H=#;0BH8$YV6X6(VK)0J-&:ED9]-B'Y^P5;,X$"I&KC;TW_;C M'QS]+T4FHS'\[U][([SM@#.!;79SBB,"K0>!S1A2%CG]YS%WE^10H?0%6<[WJXY$WBI/"%4.&(7K)#S M<@4X%*+^>/U7?.%@&^@-IK0_W%Z)D?N%@JKBY#BESX9]=Y++-(68/]Q<[U,' M2Z.12L%H-3#<#I!KX_W9)$X-U(P]RR9&%&5965J(^P.4@>; 3QWC2K^**"ZV M+7/U,&2&7)A9A5@94X)[5F"NY$MCE[1 D*"HZ8N5_?Q1KN9?VKH%B&Q3*0XES M35'E@M<7'<>#TKX-YQ<<[$-WKG(3(=K$8;T%$O2/?Z*Q:'*+^0UQMR?VM(MZ M,[%US_4#$'\>M$>Q7294>S0&%$\F&C$U3I;3^1@2;2Q&IA*?3S$IK(D0 D#Z M>I31@./4Y8 6>JXXVSM\'V8:P==T%>H#: O8M-/M5IJ5E%DF(6.:"N6/X"ZW(*VSLQ1].LH M PTRAC^2P#+N$3:NS#$Y%TM)O(?QXV%+U#G%1>IR;MK\K^EM= MKD T^:W;M.- EW<5#1GEE7C>9E:SRE218!! KO'$DZ5)6\JU:96*QF(6Y'-M MPIO]>),;V8)G!%!H6#1H,9B!(U$SCHLPXL+THH7F"?M(.[BY"MV1*:T_0^2W M$;F;NS8/6F-2T6A'+,GY-J\7VG&9<:E$-KF'2?*EE'T?IL.*Z3@YV]17<:R' MWEJWUM)S4+B0530/O3J [)XTZRVLA=67LQ:^8/N42V4J=YG:LM%%/J.*CJ%V8]_&D3\FO'MY3Z%A1*$.D!D[(<;:_8T =9L&!6<5: MT!@OK.:&/7["\(F6),4?"] 09APH>BYB#Y*/KTD>T%@_)^$@KJT3G*NX?X\I M0K36,&>CP4C%RM$,;"XF9-9#;J81NU>>H/$-?/^0!0OTAC4D?.PA?6J@@<.Z MO..$]Q$BD.EY<]AA&!B3E(FB5[5DPV=&(OMIDXL#&AC=TLP%A/7 R[;,AF>+ M(^3T7O#'<]PT9.;0%A7G1>0ENJ.%8K7&MMKI<3T[/\K5E ZR#XTH?DVZ-B*D M9R@LVYI4GQZA9AK(D@5Y.$.$?KY:RMLHJ-A8 G'&9D2]E-7XS%"=3.PH+T7U M@W@DL'Q!G0 )T$)A1C (/08Q MLUF,J6B4R^<[EHMT**%);=\R1#^B!.0>?\AS_&F<8XXAF?8LU5,UO.Q@=4O2 MZ#X[V,?\NSE31>&39P>W'#$.92??J73'!IJT]N/YP3R_$(7)\*-\^: ^T#(* M_WQSY^F!1J0534-R=6@;^E=1"&'[-#INUMNW_T6>E'!],DCCG"W"95Y9-N=^ MJ-*(Q:^I!H[M"JS/]T"\_JW__G 4 M9)C\9'QP;1341?S18YL*UL^Y(_EISE\OGAE\=$QDQOQ/0?7C:-B$VS QGBV6-8\/C^41471!S8F(QU?#P & M^9S-)P0B]%E6H!T)B(='JU>98GD_7?KRQYO'.7#H#WOU44(OFUN:(BKN:F@1 M2='].9-I[)BZQ*]@8"1,_&?9IN!WJ-8$"'+6=,HU+(%$'.R"PI?#+O8!+? M,)X8WKF8SU'\S87]'.$V@(("_PRP%!=H:VGG[&76 NA6=5(#7)HKLCFN<>]* M?9;D.Q/WD63D>XSW",_.9@Q(XCR'EZ'J:,ZLR])W+N=/-=YD2 1\UGCG>@Y3 MLM48R]1C*J$:,[95%Q[&^VZ%?=YX9ZMEHB[5HAKNV;RW[*J6W8XW[US:7V&\ M;R5NXCK&6V':C1I/EF(J-4I/M68*N/W"OL?@POK0G\Q$S MJ8@VJZ>KP&G>NX_^ N,=%F&?-]Y4O&@5[67;P3$>BCG&CF$L=>^N^BN,]ZW$ M?<6D^]MP<_01+$8O2V8NQ_.@K\(Q7+H\=,-O'%YR;-?^GV/92:Q<&[%O>GDX MIXAOS0CL%&\V&=4<3%2CNN+PBW@LX;:3^6);#S^XSDOV@,P[$^M;VI!N;W_Z M,TX"&8A#-<\S8CNFM])-+/R)HH?]"=^D]M#^1$E\R<^,T0CG!-F:)\;SWEB] M]PG.9]F?3YR\?J']:=7H90D* =,&O5)N2W[#KIQ:8?*.A[>FY*"%Z8AIHYJP);A6[P M]14G>U:^W/>RC;GJ]9.0JK>M=+X<.F.'Y/%T5!X__@F:,%X(Y HF[?J27 _U MN"B_C1%&&FF[_EJPU7P%)] _V^=LO]NB2WJ^=4^U-]]\?]6FW8_J]:&3D<5V MI>RF4BP.714LJ$%]D.R&+LC]1DI]1(B?IM$W=;X/=7ZK.@_,*;R)IRYUJR8C M\\L6C@D IU1L/@5$Z"+'[Z341T7Y\-0A4>TJ,,"J83H4/CO='B3UM%MIJ8H> M3QA#/DMH]= EME]3SY-,#;6BOL'[/A0E!-YPQ+:I!&.)<8:JB^TBA4<[G=[= MN;+[U)6W.;7OJ"Y?E:TI+\TBU4UP^5*/-]JMGAZ&+H(Y1$NW#_XCGM]6 HKSS4^2OK*V6G MG,9E;LGSF72MW*!J4=JC'IXZ-''PPU-_KFJ'K+Y"-V!2;L>X/J[4&*]/3IRR M%+[&W>^9,_[$A,E#4:[@#?M#M^C%=*N/D_2PK%7@8E8R[JZI[SYUY7.3.V%4 MEZ_*UJAJ?IA,&_D60\I6-[UH5ZD*"!WJ0Y4#P2A$*E:EQ]:E>*#,D'9LH M<4JW62QT68%'N'#_X#ON]1<6G.>CPR+!*VHA*Q14RI7MW["^_!NZX+=M[XJX MM]I].*O84'1-VPG8[O/V5#KEO.]D:U<6X^5<;'4U.&4)2BTS./S"=E:IHH.]Y3<3 MCYWG;9P](>-S8MR-\@I1LS.#&0-ZX0TVCP'[%*<^#N9+6/R,ZY,\_M:0?L.& MTY\%Z7I6GQA9K\VI6-WH8$YC4G1JH8U?'Y .6Q#R!DB_ML=\KN"*P[HNDJHR MU+A:MV&4I^9=6==7*/S60+AV-+K DI-.%(L/F$F<&&4F*:VIAW?GX*L'D;^9 MN[L($N6Z($V7IN6HRDBOT<:8HB:ET%6#0@N),%N)[50H[3F* 1V'6U'I/$-D M?42.P\(I-+R#P^%GGK@W7 M,3(?D#@.B>>#-VE#JJ)@S86&/^E>@X,GB'Z>FIL3'I"L,6HW!M0B%MJTUB7@ M.$_P R;'85(%AB<#T?5LY+I?&! Y.9>%C(%S^(3,I(BT4E4J6&BGDY=@Y RU M#X T46%DWU,QD:!2,[&21O6\_\RK- M#[ <9/0YS-=<<3D;T74>H)VE]@.,X.-*> MIK[P, 0K%AFU.R7PC#YMI N+65>1[SH*.23RMX*#WQ2^95,>FD,;6"-%W#2& M^T?/VPNAG1=:#AN=I\M-$>>J+I;-Q\K PD+G-/QF[)/D((FOZ'EJYQ]"/A R MSPD#HR=I2ZK49\I@T)+Z=<%FK- 9_0N%S',/(1\(N=P3S/8D*_2(#/+LM5$5 MII:YQ90)G0V_4,CEWD/(!T).1V2$F+&2(Y&"4:@>,BF;=9I*ZUV(G1>X9X+*I]40@Q#O3QT8#]60@3M?EQG MZ-I.=@.5U"-!),IZ?@I(UG MYEF!QMG9/-J_:UOR^27$.P?'D1*BW.\.8F,5,W%EYL0;]GADZO1=FXY/+"&& M$0X7EQ#S"TG4'7*H\'JS*'2'.:71)$+7GO3U)<3[%3+/"20V4HW),&GQF62C M KAD*UT60S?)^/H2XOT*N=P3TKU.>;%D./;R-RUTX MI@[MO;C]X-NBT; 1!U&8LP[6]L#"B= :(3!,X)OUA=RI@U%X*PY*DSR2:'# M5A(M',XP9EE1^U4;A XXFX#^*(N>X_U7>?3^&LH>='>9^^.?X*NCW+T9C..7 MPSA^*QC']F <^UH8BZ9<[=@*+JA*K\47L\J &DL/&(<D\-*"-O)0F;N[RZW2>4GP5 UJFQNA ,\ MTTO2%*;&FJ&=1)^A^[DX?!'A-X--&/J /@*;C.FX=9D#VC;/XLP@EV+D!.2] M/D?&V08.O53HS->;(') Y+>&PZFTV_6L2**+SV?>DM?%-M0ZRS2]PV1 MK[4B89@*? 0VAU:D@%=+]8Y<-M1RCBXR6%EA2>>^(?)Y5N0KX$ [0EU^V3+\ MO/.N_ZF*]$+W]!?M&:(K]#!(ZV>Y2 MT^Q:I.^+9']8/1G4UV_8][G'A_!/Q\%LNK+'R&X3X/KXE!Q4!( M0_<>.J?--R&%5;G V[HWK2G(!88P_4C;"_/#"9].\K)'1JE^M#D V(5,'B)KE(W M;RN@G649];#0"7/"=6!HUZ(A[M MAB]5>0Q>NYQXS!^_&E9GYH\)I=YHR2_TN+-@70NQ[SQ\_ M#+<7\\?Y$"L6HLZBH7JD),F],=MI=N\B"/M"B'V_^>.[875V_IB>YE-IJ9!K M\QEOP(JLMYR5AG/'('9D_MB:@RG9P#26@1952K 5TZ;O([[_ M*G1]S_GCQX!U>OX8'P&QC!LZAW?D@C@%\PZ&&P]\_3;SQXM6#J@= II=7I+4 M.M.WU"I.>&[X=IS\DI4#(1)4N2?P6"NMC0G.SV7W[62S:^5UZ5X%==WN_Q ) M*LT)]B273O9KL(N3J?QT890+;'D0RAG)IW?P?X*@WK!HJA5# U7BZ@@GFR77 MH6K^$IM01O=?:?K(+Q84,GU::\@G UH@V(3E/"-%[%=3-3-^M!!6]1E6@W )M(A['6)P29\ MS5WODO09LG\/L0-#6DMY/&R3T$HK2[Y3(Z;]_@AD4NXWD?*6RM]"J&?J;(H^ M&9=USABJ$S$%2\UB8+VNM M04UM.K6^ZK6397E,EPIJ^%(>X9TOWRYK=>WYF@XY\OA$NJ9^7(LHVM$ MK3*0U,Y2'JIU)3?AE>^ARI\^7PZ7T%_,EZ?SEEBC+;G"D\VVEAPW6YD1^![: M_"GSY7 (]^Q\&6IL4^1B.L]TRN.ZE*Y6[6'OOD7\!?/E$ GZR'PY;\;=;MR2 M&PSL-V"-JYO5#MDI+TU$Y!&:4];E)VO6^@R9\] M7[Y]??F2#>J!I;A 4Y908HPAN@GZ)T$@P)MV<&J(BSX#S?&WA=D8^[(M-&@]J*R@%F(9']K M(*WDV8HC*<%V_FO1%_M8#'*:G&KZ65!9$*K5%_3;1':;QS@3Y;,J#YQSAQ M(PC=8"LW2?%1"S3DP$3-=/RI9'J!/EBF [2\;7J6@QZA>?XTQ+\'O5,Q/"CM M'!"U9P56?#A^YQHN-J&+&C.C\ZJ>3"I"=D(,EN';Q?C$SF*J$%[263L5'I4X),Z28 M&[HE-1N<7$[X)M5WDO*; ><+-TD58L\+JNHS ]K.2+$N@D'55GOXT!99'(AS M-]M/9AD;A X&_O*"/;H^5>F SIX=Y M7&VR2T+-2)5D2:;2L) /G1\Z):P]6FXC'R*)X21&)J\8QI!":FN1MW^_MF-9 M>U;*<"/6RN!Y/5/HYE)"=4B$KH/EW=N,7<%2HG]2EUG*O5NOX&*/"I09Y]3I M8D8O5+TR(;P>B162]LT%=@]\>SUAG=& X]1ESC5%]=ER!68YN+;6"8?U%K-Y M,SE2]7@G7>0R'$-V0N=I#@+3E]2MC=E+\NXL1W"Q&#D+V- /KIQ=62H&-1RJ MJ32)*V(BFYSCV67-"IU]NU261VG\K@+=E$A8,-LT=#B:16%5O,0L!K5&+%G5 M$M@R=%'%I<(\H.^["C+C'^^M@X$&]U2S:E)1G>*X&I-7.PNAYA92F3LH^9V0 MYG$B[TRD1PZ:OM!G9I8N0QO#:9'196LA+T:M@<,^?.9Y,=Z^,>-=/G.6,&U[ M3.52ZH++]VC:8/),[&[-[&?ZS"\7Z*'/Y)1I/3>3>R2S6.:81(44X]G,W0KS MLWSFEPORA,\4RHP-LK%Z"U]46#FV3#M6%-ZMF?U4GWFSNA'YHF[4&/%E;5IJ M.DRF:LH9I:!E@1'&&?J7%P^^ON*F:+0CEN1\F]<+[;C,N!2:)(96GT)0+[O' MFM7:!A-"%-_'V::41XL33W&4[=E\@05F@0X7C#%5;-/P:05:QM01,_RZ>M$0 MUP R:&;(5F"GK&)+H059(]K/9$,+H!,$K\WQ113?;D9#8%'\^M;YI(TQ$56& MN[J951PUO4A#0QSIP-YQPPW;E!&_@M8))PNKY&Z*5$=I?5;68+K@J/NCJ"=L:&DN%GH%_[7Z.@OP23'5JD\/FGWB[!= MMO!2>$^*OA =)XA]P.,T/&09L8F%SQL_1&MN/Q639)5,Y@>JZ94Z8^O>K<9+ M*A^ . F(HC&%CFO:02/(3J>AF9JV\DEU"O!,I=08=,A:%,[N'17[EPK,0 M:Z##F;([ S:L( ^]8TD(O%FQU)E.\937JG62T7R"KMZ[);F,]@=X3H)GDQM MT3W4S& QZPL/-.(M)=LEJFE\HO4E,M7I1O7VO<]K7B7[ 9G3D &&FAD!>[B% M2%3I"9.E)-B\UQ1[9$JMB+1T[Z;E@,P'),Y 0LK"P4:%-H9C7I6'R1*N,IW^ MD)U%>]:TL;SWR.08I0]@G 0&K9NVJRR#F^IRT7"!,50&SUOI=9H-B4Q7ZTNU MTQ(;GJ=U%[7LO6/D%:*_-5Q.K0SZ4.(]F1C*D"A7VOBB ZHX6YS9&A?:;H9P M)MZ_8O7/=<%Q*O$N)3UG44@260;D"=,S,4H:N/=N0SX[\?X-X/$R\0X4@]? MC"LS'8GD"K$&08O@[G'Q68GW^P?$J<3[L,(FW/2LS_-J8+VM:HE'+WAVK0Y]X_P:0.4B\SV%5&$B]=@>G MF&9^SBT(?4K>NP_ZO,3[_4/BM?RJ@G'+.I[%\RIFFLUL@N&[CGWOON>K\JM? MN('.L8T<)2@KAN(BESN%TC,7:,>!KI->5,'8M(,E.'L+)UHVD& -Z%N().R, M); 5L\LO,@[)\G,IHX;7S;R1[.=U$2_IOB9*/G79=>X=0J^9_D:!%G0A/;3A MWA$WU?12(7.)08(G18.W8X6LJI*AM1!O(/Y9]*>I_ZU D/$GI-B>%=U7^NU!PAOS? @;KE<(&&*X69YJ^HQ6W=B#5 M,2<+HY-+\%S?K:=3\U@AR88V6_XF!*S7$)^@_,Z$3UX_ G!CQE ?&Q6!7\C8 M4.FS6#K$IYR%/0*X_2+R*VI]E:X8>!DC4BK(E%)3GB*X4N.A]6$1?G(E>X*Z M;/]%_R8.24;R-%B7_=-)W,5J]>^J/!1D6PZNPD I=N:4Z(%.%K*F VS%-3E@ M*5F8F6Z,1:\SJ-;%>8ZO+Z?19I\E&7$8NI3#Q_9XO.CQ'V'T9B)[CM.W02A! M87CRMD%)W?+#*]],SZ'4,HN.XR$YK-AQL(Z?T2W-7$ 8[ 2Q^N4::% J=7,M M&:?X3B+KS.#2ZR['H?5*EQ#][(I.4AWV8.32[L"]/>8#HXSX*X+M6ONW;,G_ MR:<%K#PFG"NBV;#-,13=G5SUQM"6\1DL-')%G!Q'F6Y)X?68&CHCN#W!Y+PP MKK.]_QOBM\\YLV#E_\_*\6:9PC!W8GYSU1273K4EI1Q6[>@U"\O4:X6^]%#- MAVJ&J.9SRFNRT%7L@/7^"8,'L5+0$]HP'=?>WI>&!IH,![>C0!)-BZ&TOK16 MAZ8PKHK3[%)0%2:)U_!ANL%T0IO>/_O<(I#!;I%>KT'N0VE__U]QC$Q.;)J1RJ'-^5P.C -*'\ XV=+$ M>0-QG:L/SDQ>N>K5-,$_-GDS]\1U.CICESF>SYNJY2QJ47;HWC%65MM67T;\ M;PD?[O+S$3_%68,/&)R'07 %30* MHFUBCFJF' >.-\.Q!,CBV"#/#XC0FHO+L'! Y6\)B,O<"FLN@.8J6]L@#FIX M9>*6*)5S&$L&8&QDEZ'%PX7NXP61OR4<+K /56!X,G*QGJT80]Y0MC'%LN$D M^9Y%JOQ$<.N,.VFZ43RT[1"7&(E3I/Z6T+ATW;"#GO<\6\4K;J;'I=0V/DDT M>\4>S'2T46A!Y",.R1^(#"22ALVC9VIZ&Q;E*O@6E*4S/D(!H7J^T\G[SW..((H0]8G%D' M[+AUV2\ MMCG#B> T(3$:M#,XB,U=<1%K1;%,:-%P26CY3-RW%O^[%VB>*XU5S:B2CTZ[ M#$=,$^VA3LG+\#:IA+(T%H:JZ8>A<5@:HY8U%>,MKLV3L&9-,$M5%O4[CB\_ MOS3V+8!Q6!IKJU6Q.Q-R.D/%\5E-*-;8KOL-JNF?5QJ[:V"\J32V4+%$OC;/ MN;@RQ677G/"=4GASW7=2&@LS?-Y>&HOV9EZF.1^DU$YW"K&15Z]-PKLQ1(A* M8W&V97J-VB*TH AE:2S, MT'AG:4Q,DO')H"(PY6:Q3(%ANB?/0NLY0E8:NW\X[)?&K#K?'!/#OL!X_7Z] MGY_D4FSSWL'P.:6Q^X?"L=(863 F>-X>"KC>R"JS93;#Q.]^X]//+(W=/RQ. ME,:(F5><9MIEGL]4[%8T)0P[G7AH@XEPEL;"#(ZWE<9:53W+3&JNJ9)BA^^X MK7&B)H2V&A*2TE@8Q/^R,KI6^562KJ.XH\V>:[L&X?#;HM&PS:&-6+D&A%%0 M2QV[,DKR];$YRI&%3B89OC--UTI_G-JM37B=W&]5/5WO"K.%Q(E]BQK0%COH M#7;&1%-)>W=?_4HF3JN%MI;G.4F6A,+4M;.CT%F#4QL,G2;LFF+>V]H%"?FF M^_EL#5ZP/T%=#C:MV=]9TM1UTPB^3J^E", 44E,A"W#8F\Y@N:%/*_W0QGXG M2=S9/O* QIL)]-:[1KY)H/1:H$PK9HR$FE'AX;RK)XH)P62SH5/+]PF4ODN! M'@FWWJ*A1H*Q>;$2;^)EL-O;) XP(10_+$DV_;$F^51PFN%8,)IS*%_FS2?]):Q VC M63:'=3V-9\;NM "+.ND,0Q<8OVU/O%56Y1S9MY$ZGL3P.$;$;NAH,\ 9T8;D M_\PNTW=663Q I019:IK/=C3U-[M\[W@T(&G5$=[_:6/1Q*G2J,MCM+J1I:E0ZGD&_ED%?3UXQG MV] 0%RLCO?X@\%Q6Z(ZJ9E%2- Z'"ZGHJM$NR,9"-\GQIZJ[-""3N_[TA(BX M,[T[)Y)R+RO,I5RU&$_3FDHJ75J:2Z56@K@GD2 BOI%(TDA+U%$RSLRI;HNA MFIVJ/A"/SF4'H0K,O,5S7%@E^,'?:5-=H$<69CK+=GGC5L0ATN&",J6*;AC]\H/GG MD6J*W[6#)I$_-TW.#8#'EU*KQBQ2&D,5B9HA%4,GP$W8OE_HV0+AB?+"6OVRD M\H(6K929>J:6&\Z6FLB&MT8=,@?Q,CK KQ<,7LW(\P,6E";UL8#K]71CR@F: MF\S?:?QW]XTE0NPZ0O5:77LDN6E25:IR93'41BDJO!ONA%&H^-5K7@1YI;/G M]L^S(S'=86CV?A7D9[$9+,4VH,0 VU",X:;3NU4PR (I*F-\0CGC ME)?EW?X\M"'XA= X3NL#'"?!43.-8&L/4],0OXKH-3;RD&N(T..BZ?*CU$2M M8U:#:98DNB3=.T3.4?P RDF@K#H"=]U;SI2L2K[D]G@O20YH5AY;\AUTL9Y' MQP&9#TB)PE^9M"!=_-^=ZF6KAYEM^P*E]^TOSV=RT;2,&D;A/<:/5BLA;+,BD&-F=Z M4^S9I8(6VM#[IN7'BT?Q1N8_*\5+[M^R&(9?7@S#[UC3 MA\LO-]*$+&745$(K+?$%J"ZS(WJ&X^'=L_3J99UOAWXB=3'Z5[=>%?WD"OR4 M#WY2(%.K#U>/\.,IV>0U$=/Y3@+4XXL9/<[9H8WP0Q];$Q2&DQ=B)KB53%VM MP61_-<.*$VNMV=FUIL-E-DLQ6^6,#2T)QW5]VJL+L_FB1H8NG/5KDX>TK,W4 MEIC;]87R(X0 Q\$#IQ>XW%X4>)!TMS^?:M,GGA5X+S#*#0=8.;8AP.>%?U0QR9>%3 MVR;NG#,$U4PVS^ @1T$M)[+];B-DS0!1#*=V&I4_2GP44>X3'Q.D=K'ID";& M\&0QC]49SNHHK9M;G;<1'\/P*$9>C?CX>G81O4D7T.O=%,&/5KL-;%,>FZP3 M$4V+HV8GBE/QJHCWZ][0KH3.9GQJ"]'%%NQ,,T;PNJ,RFI\9JA.)G:4EZ+Z M7:'@%0J_-1!.5:+?:@L,R;1GJ9ZJX64'JUN21O?90>B<3NALP9=6F"D_3[2V M!=N_3ZPI*@,-0,T$6>@ 33374I<*I1:?'':*:IXNBQPI08>70CG=/+:I/."\/='E:> =[.^]Y>9 MQ21&7@*XE[=^">!RBNVX;\8;X9G*G(@-2;[*D_L'Q]D5)_BT4:VD^K$FSW4]K[#L M5RNS6O@-6 A7G-P_4 Y7G*AQQ2[$ABU%Y9J]$JXYLNEU0YO<"=V*D_N'Q/D5 M)TJ%7LXS?7K)=Z":FR?L=K4WO7?C\34K3KX4*B?F[!?-HJK3^1CCM 6CDOUX M+T&);*77#YV)^/UFR,Y15#*>E39#X?5'6&SML4=6^]_>U'!"N6JJ,8R\HEE:+; M$C%R"*,5OC/1PRK8JW46O?#A63!%LES[L9+4L%.8P2 M?G$N2FS:&G\,"]0?'[\$'^8' >U6OU!XNO"_OI#I2@PM1*T M(4Y!28%$L@T <_/ [:TS(-RO?3\O.+FN#9):,TLJ7SHB%YCFNC&')0'0]&PV4-Y2MGQ5T?(9I?2+%D+#4&,@U:U9E0F=35AT, M9WF^CKI?9_K'JXKGEZB>$M<5JYEGSD<_)>B;J6@8]SFZ6$6SBB.:'GIP<.Y: M3C-G(5-/EQ\EXPU9G3+U1L.BBN2(T(>AFS%?KI[G&?Y0S6^OFA_=)&&@RQD^2>-RMBJI7[H8N8 K3'M6A@P2QFB^NEC02WRR>8C$P,KM&HLK U)3 M9=X>*Y-'//4PVI=J*'&YAA+["VV_7D-#'TX-FCS3K=!Z'"=Y.5=:]L0X38?. M>SS"J8=FGM!,?"^K:.B]IY4T0'E$ 1:?3.>4,.?'0SB[8_5\>,]OKIK[N^<0(5"A>&YH M-0@IF><7;%+N%44P%WJAFQX^ +SFX>X)1U?:U.@J";+;IC#Z% U&/2.)*]-1 MNB:-"SK$0I=S?F TI.F]E_'/UP-ZDN[7>QG=I'&,ZO"Z-9Z.T[W0S?H?@ Y) MU'!)3\>667EH#FU@C101:#L[9?I9?=J0.#B#-AC"PSI&+,F.."O6K:CYE)PW MM(Q7(=3083)HA3U%ZF8CS==H_=;=(>\ 1]V FPU)-UU I49TP,X<3O62/#>J M+,>Q<3@;NUX#PP%MWUKX+V.WZUB&6#?)XKFZ@G=Z?+LALC.87H0N_ JW90A# M'/0.98A%,=IO91^BJ8RXY38Q7AE MWHVE^[T)#\PP[%W[@G47GZMQ?=8E=CB76N=L2&'J+IA)..B6U4E!PNL4Z0ALK1^Q9.4* PW9Q M9M@4B>=+/1"MRMG65+BYNWI[(?=B*T?]*1F#[WM:+#EG]*%%SDM$D>#<$"+N8BMWVZ:> MZ%95U>Q@IH+$!%:X3IP%Y45$J.%!J8Y>OSH?ZD5>L^B?* B?#9TTHN]@?@Y0,V3%&-X_(4["5(X5T2S89MC*+I9.(6::?DO70\IWK7D&$'.NID\4Y>[*=GIT.W09WX=Z?8UZ77]Y=E(@D]MZW/,'1JAT MF0:VQ%4P;F1T38O%A&CH_#X>;$R4O*SNLW=KR/V^V9=)/BOF,9R4ZE L$CC, M,;^W%?B=_-* MW,&B4\[.!E/DNGE5!LDPWO0VAV(_U;[(7U@'^C#C2T+JC7O M@EG2Q?-=+4\D8Q@2?.BR^&_8M_GWVM3R5(O6A[<$'V>G@(PU)C55+Q@D$0?U MM*O?,R[>N9_W?5=\/@J20WO!V38QD(E&F\&:DU'-,_*Y>#MT_0"AM!=AA (C MMDIXA=8TG.+L4:W.>22R'= 3MKA4I3M(%,,_B3DCT&?B[DR$1V8=%WM0F5ZV*NXR*3#U(=83 MQ\-,1\;N6B\_Q8->+?_T,5$>>E!UKG6260(V^ F5;CB5K*XOL(<'O1^AGO2@ M()X7;8Z?)G!]:57C5F4P'<3NVN!^L@<-A7AW/*A1$/+Y5)I9XC">+-@M>\G2 MM;LVO3?WH)^6]F<+O38CQ=PF _,PZ7HC-9:\_7YS]Y@EO]G!F4V -1M&!6=5 MLF/CM28TQ@LK_)XL=%GRKP#)P1RC(K/C:C<[FZM4?C2CVE8ME6J%(1?Z*>$Y M6W3+2L8!>R B=.\%[9 MD# <*_=:RF*83Y3D9\GK$/A]._\HCADCB<03^LGF'9NO-I_]E[SRPB'0A$RT M:QO>8.'BF506,Q6.B2_@[."%GFL_H=L_\+)JMR;4,#%?FQD+#]==JAYO.35H MO7H2@=OG$M-?3GVU^85:8(1X'T MG!&PH2/P9&G2EG)M6J6BL9@%^5R;\)YY*@4_V'U8S=/]/@#3?J><#W[O7\Q" MP]05X]ACU[8M&.VYY^X]XM?^Z"\7Q)HK69H%NN'02Y5^6E(R XQ?%$S/1E/EU<<1!%)@ M-Q!#_OD;_2OBN L-F1\=S+&9(KFC)P+'_^KYHKO8Q0"_24,PPA7_]>/%<>Z@8F&M:3R3QD[+_6O4,^NA8P-A[9?#WDV':.M!6 MCYVMQKN^]..?EN_A(Z8!Z8[^>LGJ M8QR\#@\V$D.O=4W]B=BYY O$_^Q;> QHRM!X&GL.!S?'>M67-N7DNC25'&4 M@:(AQ_8T4B3D]/X: %$=VJ9G2/Y39!F][<<___=?21*/_K65@'4M[NVP1H3^ MT;_O("U^*6E'Z0"!B1" '(W*!$P(8H),"C$(9&$@)0E!DG 8K@LP>3@QPI[ MGT/Y8%]=@M_Y0MS5E8&I2>A>OE9L,=D(UZ);#/?WK\%G"N@-P^28#,\66T6& MB]"U;(3I9@IT+<]$,O5JMF-/O#+TP%XEGLW5/AG[X^X 9X34V36- M/R/93(3$X['4)W+Y_%"WU!X9>*[.5O_OOP@*_RL8+G)-AFD$$8$B1M:1)^L; MZ7?.XB,&\*-J"2I/65/T_&E5:V'!'X%&U8!M"ZE>E29DP-35>AFK=YL%/*Y; M])N((%"\N^+VWOAO@Y.->3Z'\?WA_5$%MAJI&_ _MX/$\5$=NE3_M[$/&$!CH67:[@Z"&:,ZBYF5?D>MQV.3H>C$F^-V\QC[-]SBX-"$$;X8X18Z M LE+M/E\3R5BU#/?7^#ZN%PW/_6U^9)_;YY^N:+1M1I/5R(LTZBSK4B#9SF> MKK4BK7H$&>X6LLX1(AJILQ$B_H?TGT@]%VD5F,B.3=_:F'7%',"(KC@BTE9P7*.2-0*194N2(D=_1I"?)3ZRAAXXDL/!_!8U; MJ5(CR'$PJZS7CB[EX\WJ##9S!569*+I-M>11VIB]B059* ;IO!7Q4>+/B#^V M3_,/%X1 ^^.MLP\5.%2!D)C\E@V,U;SPP.Q79WU@Z?,ZPWMENM*/)JM44QE^ MW.S'0F?V6RQ=XXJ!?7^8_FOC/G%H^0G\LEG'QMB[6Y!&5KGCB&R;>D0X^%_$ M-8]<_>R)2NP]CLWO;U< MX:';'"TKG5A7YA5@SEQ#6VIN\]#AOP!#O<;5*\4L[>7.OL_F#D0W8 #?FKRF?((<"*.!46_9B1%%".BN$Y$' $;/>(_]VX'USFR M%#5(#J"_>9$L 2&6C">$01Q2 HX#48R34CP9Q=CA,VNU6;2 #;L<,U&C>FS2:WM#BA:2AW<2*=$ 1K:39<@V M/4_V9FESP@W]A=\O[[1%!HZ]5HU@RB-.3&FE:EZEAD+J\)E=H%/-L6GD&4XM M3N>9\8UD M@_DV\%QS _PES)E\8N4GR<&\4ABC"R5AT?'OKJ=]K.\X6=C7FG>U6Z M%BER%;J676>KGRW-+U>Z D ^QQ=L(NXW#/L^@'3[B*$%YL5UA\5J/?QN^(4L M)SWJIS1V7*DSP)VXW5INPMKUIO_.-P5@J22&4T2*BI,G@X9 K3B2(@9S!%/^7?3HBX50_,G^Y'Y&&-W2S 62PCZ>(S7S MYW_N%6"*(3YO-1W@S!X"0UD&G__SP-=7#/J^$/0.EC^0\OV0$I)H@Y8DVS\1 M9O6?BF) 8AMI%*MM7.R.6VEUT=-AL9./CR'7%.+!;.[R2(.%0^"Z(%*7D0> MD0:PU?,AQT,C'AH1)HT@MQHQ&C$6.7)R')_AJM7ALM6I%I)-@7JC1G040YH! M6XJT1C:$?T9B[BB2TTS3_C/2@8X;28,%8A>0'FH2ED$_U.1U-8D^.PZCU^A; MG3:'9ZRR5ZRT:E)?;0J)-ZI)X^ZL8H(>(ROJR:9LX9D>D*^K4>RW",P@L"/9[D^ MR)&7G1G!D<_VPB?R^AU$^QA:O6D70(T&E8*=F,*3HY)9C#?C4Z/SM@:B%70B M14=#0')^+UN[,DQA,5@?;:VJ_:*WS0UABU\N22"N4>Z7D2U;,43% EH$SJ'H M^0M4T&5_)NE\XW3; 1R_6"#(-$=\V_PR;_LK*-/>I@ON=+7^4UOSWM+6>;"W=(.I(\?UL8$XW%/^BK_W/[Z*5B(EUM^*([ M:(Z:F>-.,HM14=5SXL6!EW"Z&OXV1YR*Q;$8F4B$MW>70Z;85EP%O<\.< UM M*$4LSW8\O^''-2/H#I_%*XM'D'\,_K/Z$YETOW6/%MVG[] &N6[_P0D9IY(P M(0 JEA1BB9@H $#)@BA)^""63"9P0+QL@<':HSB7GNDE!C(D*0GY7N8E_ M9^SEG6=A1+-8\U'Z7[>FJN6X+*Z_-I*0-)571<&MVY M>>:U6G4^LP\G2ISSJ3L+9W>>;**GR9HYVP!B\QF;V,K?TS6[89]8MQ5UMK@"!.(J(_EY+3^&::;ZYY?'8JHOW1#MO-(JA ME[0-@KG6:EE2N&1\HT)"//Q2J:T7$ 3J!^?B"!A#=,&(S$8*NO(\WWA?>NM\ MY'?_M8;UU&Q!D(/ DNU,34>V7ES$)Q;&=&)EHNYQC*"6WI@C#H[;B 2;RGTX MI?Y_\)\4[C>$1-I \^!^RC(,2OA!0WM ]&=;WF"7G=^LUK8VZBN;OBU)5Y=F M,6U/.!R'U5C+&:8*B6)YN%Y!\P;X=S+U;U$8.9O=V=D8Y:W.Y:N1]8;%O2-X M24W/=T"W*>AM##6S=G$O%@C:7M%N5I-1 B=AH@^:@%;XU-M2J36:R]+-#YKI ME:V/^'NY0#=2J60B?ZR>&\EKY@!H$0YJ4'37-_SG2-WI>Q<)+MI.Z>32WX^F M58>':=5(S33@]7*KEVP#5#0DO[D?1@:+B#B"""ZZO_6/LAJ4_;P25'$B(#*# MFH:IACE#DH/ 0:.5T!>.YQ= @!.1H*P8JX6BK*?!%7TQ/!Y9T[C#)$3NS]MM M1')A8:<'G?T-!D[N@_!R/$?W02"CIQ_TH7T/;M_-T4&"+?MRY=9B+092W3%J M7JKJ\KR>G#(4([4=.\8@0W=TRZ =4FOF>S:&B%Q#',E4*G53<_%A=3),%UV9 M>(IO*9"!D/U- NQ@SP[GC.6(^FM7]B_Y&UB\-":AT*ZK2/*JBA7Y/)UJFYIG MN, .=F*PG1U=BL_T+MXMMA*\TJ_/^XG.@HN59P]=NDB79B,8+!!\H5!_$&L5 M&"%'Y*N2% &:MM6G744;P/4-Z,%'=.M0G7;\UB;D\U7,=VO^IC 1*3BC(KC5 MLJ$(@]040:Z>$>Q.Y43^0$]&$6K$\<11Q!F9_A8*F[U/W!%P7](S \ZA=0A^ MO";I/\CE&E+D#W*'[@$*=M%- _^0>O]'P?WHE_YXU@\+3F4(1A(,%SAN)(6O MGB"!A?,Y9N/VRI?Q;#LX%\;GE3^I=('K[>I@49*CY# IF[R"\74:3JV&'GU- M!WO0"8<2GGW;H=6KF=>WQ"&U [X:( W0%==%BA-,<&S3\&>]VB("T0QX$2GZ M<3X0@X:T+'#!:GN>%Q;B^1F[KO@@K&7AT--62THYK!7Y YF*GQ$R2O[^8\BF&8C7PK>I#YS_?1:=WY.:+;:WB.SH])Q:+>%KIDOQDJ/0YJ=ZK M]=S78M2[T.F+0IO?2,N#V:B&?@\C0!21EB.$(?C[>/>GHL;1JRCB-K"C7S@Z M,@_H+?;&72#\ZHC^Q9]^0( >A]RF/]9A9&B;,W>T^?HG"@U@,+9@ZAM488/> M5S]=0>)_G1IA\#7QU^:V5V\X/;[-C7XHL+[YQ%@W=^Y-S@ER@)&;Z?EN;'-- MF_$E[5W?=!.K/.$MI<%7*+KZIH?HD97CNAUY@^T]:FTO MS=E_#LFO9.WIKR,_!"6+5^H/0= 2<,5W;$/37MQJ;5&083=D>\9#A"I'L#R#GN<*=\^HD4U:=N)KR"53#$S8F. MNSM@ML4,137+2;6C\S4H=EC9HF^Z??R[^D6^P"F\H[$G%';\/>.^K7[=Y: _ M;!28X[%[>$S"9H#Y8'R9U?!V3(,QK&>[QLYH>H]&LCG,X MLO$WFF'[[](6_LMG"GJUCW@#46KZWA%Q+0A"#&"("M#\B-M?0NW?[*Q/OW,B MEFWZQ_2=J[A'_P#[6?V]Z>Z'X]8O!5SBG8G2=9UD'8/XG9I^'@&X+D2L#82$ MV.CO^8S&#H9![6"[!!(X#HH*_$N;_ &491ADYXSU"F#_EXIO 0TD-]\:V:86 M\=O<=\3Y'/YX""#;RF8DAL?^&/QGVSD [ % C\7J MU\_(N4K\I]K?HBC;M#\TTZ:?!933P'#'_&;I1J6U8(89?L+"%$@Q#]2C]2)%CA&7EN'#AI\'?MR+/^.INCK9W- M,W;3M,&BZ%5'T.IGZU*D'#2>^9=$T[;A9I?7P _9ME^<-'WUG"JFYVB+C78> M>^O/UV.C0"\A,&2@.?!6QZ[D%(-S=9?Q1Y_9TO1"/>5A49D5+"+/+"J&H6#2 MDFLG;GH RY>C,NRQT.M^TX]& FB;*)A9H?,9M!L5VU&#P+=L*W*^(O"!N%L4NYP1 MU+3M?/"/4]V6)PLZ5ZT"OV5V<:4.S+<:PNO$)3LEU:]Q+^M$G"_\P\DV46A" MIUFW'(8LY,4$8[4:8N=L'N[-"=+IFN!$5%!]J/ MB'_ (I(;O@]2VA'JLD )47P%RIPS!-5,-L_@($=!+2>R_6X#/7C]&"=XP$N$ M-H)Y5DXSP6Y#QJ3< W3>$;)\>9YILH\X&QW6E>Q&6R3$L4\LP5]SZYI) H>'G M1M8])2>XW+#-^2+";>+/2+!)P*H5S,]F^-")K(X!C@0(&"%:49RX_GVD"J&[ M2KRA\&+5]^:@V!4]"/1(^M*=Y>=6O/3BTXO9!5Q'59)BF-I8.';G76O MSL5\TU!LC*W;:ZZ& /Q#9.WLO_&_=O?O& !1'=JFAWSY]L4!WT445MK^CH*C M36<2&'-+Y,QK_G\C. MWW]M=P79&8[?_;33K[1_[OGJ9_L-3IN+KVQ3LF:<#S&2^.FW6^GHXYJP&/$S M$3]HE+I)SVH4?_8&(#*R?5_[KU8]PD%327(5)(BHD1\_QN"Q*$8CQ."/(C) M0BP!4T*22"4% B024C06DP?R9J>PKUC9^V(M+YVN,/[INIEZK>6[WBMO+7?1 MMD>/MD+B'O8ON@$BCE4BWKF[%?Y]=[=*)+\I8=].9ON[#W\M=>L(*7CQ :%7 MW)F,.-P9Z5P$&X+-+0ZV#O!Y\^9-.\Z#][(6;%^S[YEW6>B(MF+=@'^W#T"N MLG_0$86_9WDVT-SF]/[W*+[R^?+?']$?KTHW%?MLV6[G$AF:;Q7K-9KMU>HM MAF7R-)LMUO*Y.MM!?U7J]3+ZQ+6.MF6\/N'(H. 0P1W8BTC-=*&_ A'8P4+" MG&G[9U-A%=-4@\WQMC7)@SG)0T4NRG;<6C^"2'Z?_NC[>IW/!_ WA7N#9EM% M(9HBHN\#M/_[=2[PM\;I9?'V97[]6S#D3<'L9^AF[-JZ&=G\/_4SF?H$52VV MF"J1YKEBC>$X@4J1L>@[E;:(/$N$^/E0V LFR'C5H]1"(9"+V(6.4?ABC=BF<-BF*THVLQA M>[W&:_%;B_=AAFX"5K+!UAL,VRHRG!"-19,?21&1#P,4"@-T)9DV;-/R*82/ M^"=]N[._VOQMAL0#;?2?W\!;K" M'V+*UT %? _S9/_MX/SO)Y>OS\[/3WX[O;@\'[R[O,"4Q]F[DW]\.+W\Y_G) MFZ\P4_8W9LI*F"F/M\QOF8X">2[.%\O*I5WPR;\:F,@0?L%5Y<0DP"7DP5LD M"BRY%IS[Q07OFS*>1!73 O"U3M7X6DO41@T^ROXXN#AY?+J]>F[P;OC MT\&;5X/+P:>]?9#CKPD<'6STWTKHOT=8W__W7,$PKE7R_ZWU$J^>0CKX$132 MX=O!N\%O)X0\P<#"AXL++ 9Z]PH^?O//B].+L]>OOT(O'6[TTDKHI<=;YK>+ M7,L836HLP<[ (9)\;3A1CXL\869M_ WHN"9C4M:SF6(:NHT!MEKZ[O"'T'># M?WP G^3TOW]#?PW. M__D5ZNSY1INMA#9[O&6V!IFMOR>M=M',9AG]C;7[V,%VK45A]?37#P'>/#K^ M??#NMY,+%.]7<"X/?CL_8?'^>'KY^^#X^.S#NZ_07T<;_;42^NOQEOF8.%VQ M<0]I+;"_HG&I1(\1%>R F^E$U/,CUW\BXPA>8/6?-=W66F963M$=_A"!_Z,! M4D:>G[W!BKHAXC-'QU_LMAFEXCPY/2WK])&F[KB%=%&#[_ 3L#=HY:$GV'CHC*M MDE1:WU&GN_>ENL:^(Z=Y-9.>>&LM&VN@RAY=M!GQ?OKI8/]H9^_HZR'O&\S[ MAEARO;;H=Z$OV7YU>GY"7& G_^?D^ -FAL]>OSX]/CE'#YXZ:GV%T='?WA@= M*V%T/-XZOTJQK6Y15F%P8CK;GNG.MABR.=9=Q8+?L#$!AIHWT>6-+GMX&>\; MT3X^>_O^Y-T%^?J?=OM[SW<.OT:+;4AS5T2+/<(*6Z5U[/3S7NOUWNBGQY'> M'[1U?E^F>9S.P&9S,)FOE1+\N2JOTWB#=?K1 M==>WR<[]\>GPH-\_^(L;9U//D]@GFKPBCHJW(*+>**2)MM8%S^Z\GIT M*;XX_>W=X)* _@<'VX?]OVAAV-NLM41N[(M5WZ+/VV39O]31,%.//YUQD17E MB__8WAYN[V^[E\%/[SG5WW:(*SDHY[*=^T_<+TEZ_;__%_R7N6FFHA*%"A6'85 M#.(:?]\_.MH/@S2/LX:*'89-'>1%'63I-,6<4%V$[D-+4Q51-&4P:FHLE: B MB$:%^N]9%F$"J1C^B341UPK^K3YC?03GG2@@2W43F&6JJF8Z MSLFR=X]A<8<*M@K\E8Y2&.=P'C25TC-P RJT"HHRF$U*8N3%Y=[9!@V592'] MN_^K^QF\[I7*YO F2!S7_D4$[\0OP!/2=0-R[="Q7&X)2A&(&PUT6))F@PBF(D@X$OAK D"4H] MRA"(:(E.M"LA84"O._+E([3"$>+&4'%4";V,S":-##F=\<9#:>E./T"A2/,$ M-F0YIP^FQ*2% LVYS[KP+NJMHV)2MZD;44DP5:1T4IPZTEYZJ<=-A"3:BOFO MM2I0)15YYC&SFZ7Y-3:47=CVL22GR[2ZXD^:7#XC_74S24'8\%%)BI!HV*6X M9"">6)#50VV&"K5HZKB82LZG%!;(:32GJU09H/" "&>PU4=E,87;@JS"JXB@ M\\N17"^?B5YP.L47AW'1KVTOON68+QBZ?W7(][22ZP(+'ZX=Z86C2D6@NPDR +8!2#,K./HC;2=L MY&WMY0W-QM+#U!%1&(KAF,JT*$>$5CU9,BB&!>M0F'XP"TJK-3?2M/;2! YV M [)4@"J:,IK<]<[!>"RRAMQX\71S-2YJ[92AZX,?@D.E;M#P' 4LG6!'HX\; MJQQ]Y#SXK:1ZPF@.(]\(W=H+'0I)Q+X 'G+@ ,5PMHT:]),H$@AB=J-=YE]1 MA6UD9NUEALXP<8!='07>+"@9B2TA4WGPFG^D TP5-]Z",[+)L6KF?536P6D8 M,)AFT+OM6AU[\ *HO>72^&U")T\VJ-,YG4$U4]%5$)%QG,*O$OA]+_BH=)@D MPWA*%6=1BD[A/"B&F0XNPP%$BUI']"A0)LT,+\HLNEG#X.*Y&L$*T'3B M4J3D3.GX^4*<&M:RXR.C!-!VD8\;\V&)3\"['L,B@M.74%CW(P;\X*->\*9. M>AR"!(FNFF&5)FE4@D7^ Z[&_?-V[XK:I;HZIF!\S"'RD\^R3\XQY+YJV3HG M+KG__&C[J']T\%C9T$Z)_I!GF%R@8_ &]5H*&B1&H0N#*,M8'EGBK:C_IY-D MD8\^7)@/,;P-O_V0IUQ8BM,>)&@RE3^BE-[G[%):!HGV!/T;T-1@5%7B K$+ M$YQ6&4JLS%7P[/CT/W^&!<')O/A/3"(%B0)%,*6#!90P.DG>I57PML@5-2<8 M-&#!E-3X"J,:']'L[VYCM".#1_=[V M]F:].M?K932)IE%E5^KE/18*3M<2+("747Z%]\#GR'V6+!&LRZY9EVU>EY?K MO"S%2.K98ZW@)7SP$O$!U23X(\4KS&9(*_H6YN_;3-A?PKH],1S9[@9'ML&1 M_14LHSJUS[M'E'_V-7 CCGU<*MI9%)MRSMZMF[7[3+ M[,2%X-(7QX?V]Q;B0P\Z6;=$U>Y81IRE F^AIU0])43RA*),;/"!'.0+K*DL1;X>9O%E9 M7*>)(@-J!!J@N*$XD12@:Z"93?X)?L)W1T+?RB5CS',+-:BMVX!;*031#Y<1 M<"+U?O70$TD5I ^=)TAK&'/<;1N=<_*1 W&V&S.<$^FW3UI@$!OV9]* DS@K M6#!O:&0$!ZQ4Q'\U-8CUOSGCBMXK&'?5M,"NT[6*)SD8Z&..D578UW#.@6J^ M%/:W B.^J193MPQ7CC(,-T]A[Y-'AG=Q< )WZ 5)F< 'X&EG385TBZWT;EI5 MS=(HA_,D@D^RJN*1XP-O"NT9UF 4JP!>NH:9FC6,DF605RN!W M.\V!G>V=J([=T*V@RA\]N>/[-L^[#P/W M_-ZB'VW4XD8M?H5:?-ED5VNE%*WFV2IN,+J7I%5=IL.& -3=R@YOYMA!+44S MQ"F\OYHY^KYJYE8+TX2*>/?X,B![EO03[8B-?MGHE[OTBR:\CNU>!OODM;MN RCH9S=J(QX2%BMPOBYM$R"650B6I-&'V55VU3254/X0DU6 MNPY>2TD9O^\>*FI_;X55U,;*V6BA+]9";Z.\08A84^(6605#9VI&I$0)T?X, MHN &MW=)R4LL;IPI=,_@$0D7J)%?QMM_2V]_T3=LJ%3SJE;3"O)/14, M:$\O#*9-GC)%(9?"43DB^H!M[15J$XJB/%IOM33+U)O;^UA VQOULE$O/Y)Z M&>C JZM:@N^B6T"U@%L3[/,>0U_FNB"[@-*CK"'V=GO[N^9[Q 36<_T]?'@6 M*QCSL<5+/'OYQ^G/!%P+!8$H;EIEW2R,03N.$&B<6]+Z[&\R'^H-3!BHNE<* M31U2+T]Q_W^;D0UH?5ZI6$V'JN10OW[@D$=2*MP)YC".9+,3Z,A50BI1P91=%8W=[!9B!58B.>]P\/-0JS 0FQVQ(HLQ&9'/.Q"W,WDVG5&BU$AL]&? M?0[(_PTTRO(1:3 7DX6WP6S81']O+;SW:,T%;XI8VNEUHZL>6#L\R$M_#2:0 M;>S%_WZ@]^=-^9V%XJLPDV3C;Z1A(PW$OLA>X)SFHVIFBQKW0$6*+W-_K/7\@O?*]SY;N MC-$/#DPA:O!T]NG>@M.[]93%E>Y,K,;Q U=1%L!U1W[B92 MOGG5.I4\?Z\*\&?]GX-5JD@_S0.X=Z;II\=1EN$_D:0FB>:]1ZU#]Q RM"I> M9=L=I>D;<,\F<;N!,JSM0FR@#"NR$)L=L2(+L=D1&W#/%X-[+@T,?(/MV: Y M-MB>C31LL#T/=29Y)%D_3.YB ^UIQ0!W^YOTU$866!;VCWJ'7Y%_6C8]WR,E MM;QJ]1@&/2Q3N,WO*KM6^")XRRBOMA;O^R46^&H;%T]_BKX-KN5)3]%&BC92 MM$GD;1)Y3S&1ISO2)T\UI;?"/ N!I5@XCZ9J'ISDUVE9$(=@E 7'Q726I=BB M*PQ.\[BG>\VKQ"'#"8,IMI!7.?\.&12F!?B(1>F1,B/QU^%.HJ38M-6X MIYSKR>O/M(K(DL- M\J2!4S]1.5%:L^;5O8XK^A:[+]:3J.96V15<-"P66%,UFY0Q;RS?5(O(E/:) ONHF%>WL34S!_Q=S,]/KT/X1D:_1D87 M!"\D40T-VRZ9T4S"NTA=V<6VJUESD7.7>3([)7:J5(WR.L9V P52GBG/Y"7VW4)?RO*R%O955I?;H6 M?9\59J-PT6,T?*X+#3T<;M=94X+MJ2IJ6[P1S;4238\TW+ &L^8T0MC%(?[8 M5)PMMVW[83L/?#/7@?N],\UR#C/8$.4R?$I=N; A<$I@'N?EG0-N\G^7IS M6M4M=F\YH;30WJA@J+(4Y#681/!?:+FE(U"GH%V:?-1DHS3+L-L*B2Y'.L&^ M@X'E3&'NFOW=QIMKME6&L)8:G[<8T$T+A$LBHM5C%+&XI8O=,7CRPZ'"7E+$ MT3Z7I@M-6<'D#)LJS;'9.KP[/]:\_00Y;ITY@'_"J\.?0=7$,)0*9F -=^GM MXDB1<]K"V.]\B5;4DZZH;PBMBRNMLC11# 851]8J;&K_9Y&"U%S#K<$(J]BJ M?Y;^S "FV#R7GJ#R"4;E?4FWC_T5+M17.GOBUG".J\_)X,)[Z)L@7W91UBR] MPS_AY,!0$[S+\.X E)SD#ZKQ5Y[?WYVS\-SC5ZO_^ MVV_@R4S2^&_Z1DE:S<#I>I'F!-H=9D5\]:N3F: ,+MO@-CVDO;A>?W\YN, D M??;Z1[U=[!R-/256:-9^S)3D_B8EN4E)_I64Y.-+ZPHIV+M5/_TX47'!1VIK MN[2_1>7Y@MKCXK\6ON:UI;*/7TU7X@LU1G/TL2VHU9WNV_T$-EVX:DVLO.!- M.B5[Y1D.>F?[5_=']%'_UY_98_ NE]3!?1H8CTMP7O]2!V,,!)E$\$U:3Q"/ M []150S^I7*Z?8$^;;HYN\0G51"LNEUD:_\;:5_#POUH7?1,]@(!Y9V#$H/ ME-N,?.(P> UJ,TVB4.\6D*L4 7'4E$[E,%!%[C.V*T<$'0N431/#HQ(XO%.* M\^&&=9K\QA,$O3DA;>UEFV ";,I.9\5Q5#XJ$R.2MZ-0CVTF7K&>INB5&;OY MM%3X1(P>V&3+I+C!W0*O5-O7=L<491EO+PEBFB"3W'4M!?4;G;[4_'IS]MX> MHW,Z-++Z?B9A@Y\7S^"/6_*=5A748#.0IG1'VSUN?FU_YS24XZWA])#C$SHK MP.*'/Z<4]BNCF#,D]C3QVL@=2YA!0"E.D,,>,A=+#ADY1WK.\#J.0MRC&B])U=KQESW4K7.;CORA$@V,MA*83 MO)A=QIB#&\\4-6(VIUO1U!4:?!PT7F)!WF;F]9R!:^'BHY>MMR^QM@(VC\10 MA3=:Q_#P-SHS+O39O3DW;MO6[T_.CXW'9G6RWLOXM;^-3_/@+*X+T]=R9[M_ MA%!8M*7 N*M4$GI!YYM)D65S<0S( #66'1B*'<<6_>;W(DO(&.VPAMLHP&V4U26$;!X'FX M8-FB!TAIW*9T?DJO!XK%SA_H/+[G0?\GZO;\/U'>X.=1(9,>(DH4:C*)80@0:F\=&!?FAB _SW+P&9 M'SA$+#R!#:7MV8(,56-2VI?F=]7H4_U2HKG9U&Q;F&)44AS2&JEQ4Y94H.*& M!<$;Y$VBKM.BJ>!+.';AWL7/VA1E'&I%T4^^W,XLOCXVK49Q@A']ANEA=J/P MSJMGRW:>T]]G[S!6G-L=E/[2[.M"!T&I_^% MFM6\JZ(D=#$+1F%SP2PJR>A+ M/"(\%LZB21,&O\,U:VO ]"@]&Z?KUA ^F$2?0=09]*\ZO1SZ32N2CQ_=%L=_C8'T]ZDJT4HT47S$ MY>0!_ '#@[/+EC0X]0\E;]T;#)6443ZFK;RD)L+'<&J8)VPL,+HPV\V[RVR! M<.'<].&B3NW#[1:?3(#)%IEQZ%S K1OQ*0)##C; D TP9%6 (9UZSB@3V.5@ M>H#JP(CH+)(PDO/U*,WJQ4]GZ8S,;=8B87"-4-ZLB6KY9D5.RC74! MP[X)SEOYF4G7=.%J&8RLH$9CG01CX5 (6?Z.2K3&C.L^IJ!F#%2@%ZSA@?:- MS(B!SO)N3(=[IF%>_G'Z<_"F3GIN @8^=&V'91I*;ML!U-8E93HGN+]MXJO7 M!1>?U45\A9_QX] N68)!-@X^IV\H=NCF?B3#\YO-\,F3EMRO(Y_X"G6.6 DR M8K1YX(:8M]_;[>WO_F0#PS9X9:=*FQ2C5"R;6)7D!?!G6]4D(LN6SBYQND&' M5)):,D&W>]P=T00S^.,S44&!/[*W_U-/?BR%+' P^R@(&QX!5:K$I]=#;,=$ M6O +6V>#]!EQC-$NNAZ?D((D56R-F1%+-LX)ID]5/2G(D9+KX5'K& ;[1EKP M55KIXIDD.+/^]E;P5GU.P0]^+R[[*S!YLV+V.+[65\W&%[SO:BWQE\(LC@L) MB*A1")[9P$M4.5_:7-4[<-^.P8(9-^"=7> 5X+P<]_ZP5[ZSV ?:T/A3]&?@ M'2M00Z! \++WO=/%2P?)N1]O]4=!WJ ?[G^G$ /!JM4)_8-7I6M!R+G!(:-QP#)*$8B6>_W\/.'BCV9%,0"L0DE*5K1FK\4K.%3"L?+ MM5Z.@PWF.\Y5'KR,_HRG!!FZ4SA!F"O.,/Z8O_4TY/E\ZD( MZ<4S_(5.Q?),.8N[*N'6[[A;W>1K_X +I-XW0]BLH"+3:PSIO0?#0 O-P(0* M=>!:*U)WI@?OWY-;AO%ZLPU1'M1G%3<$-5;UC5+P[.2B5!F*E?S91[H[NXOWE1N1:(J5H\%);OW)P,QY]_GER=O@N4%K#?*\@=^D6% M%$:TT'O<_VXIYH($+91D8LQ4'N>79()!F=430X#JCBL "Q3<]1I<-86UH^@R M(>P))AW1+#%DQ*U2($066.Z5-L'=!X?:D&NJRA($ M,BL&!02B,J(S"KF$,0H2L66Y>!]O$O%UED]D!R,KTYGI0@DL:X,U=J,12V=5 MQ^E1*:05TW;=KV@5?N&63KRXO2!VLYUQ9)=MP<5 @P9K($XOGJBDR3AL!G(, MOJ2_?S$N!UJZE@B%B'>E*/<1U#3<.[AAE8JIH:&,2L67$Y33DNCA&&=X6 M?YNK<5&C#^EOBHBP@OJ-#$"+B+Z>)!+C<(/$V" Q5AJ)00JY5"C)^KAC;5 Y ML2*](UF/8 6D?P(REU/_^0)]F\9'WNL 9 6"AYT$LQT@!8T"XU%T%/P+7"-, M+Q+2;)3:\]+3B(P2(QNW3"B::0(Z-![POYAV$T9#IYH:8Y!M").EN[H0B(Q3 M"P5&_^UW,#J*X, -.Y]=:7L*CERP)_#)YGE\(,-4>@&YA=E?),.+6!^7Q3S* MN"'!86^?4BC:*24K),LP2B1DU8DS^>X0-\>H1&7;96D'7?'TCF,0LTXPNR U M:26A53& 4&@(;8RGF6&DT)06&O6/V1Y5IR("(S2C#!)C=*[&%J=-?PH>$_LM MS10U73)9(ZQ"067D<&8,BV0NIV]PG<(PX!U@?]7*PO(%D8!=+1#L-"7?"_-I M#5B:E ? :&U"=];,'%Z$!^XW94R'\RHR6FT,#F%/Y:V89-MX/@R-F&XEY'5VU"1I[#-]64A'EK5=DEE%,G3M7'<8_F)5I MYHZ>7[4&$[8:*0K@HK>,9K"\#CK7"F:YF*:Q*P;R")>Z!.AMRP' IT7,ZNAX;K B^RT=*(BUL4T!G'.)" "TWXM@?KA33OH3;@Z;(TM<\ENPM&%< MZ$;A36R0$+/@4SZ"XJB:!",D-T3M3/,R ?^H0'0B6NHV(DJ+MS@]&TU=4V&V M8I 3!4K[@UYP?GKQ]^#UX/CR[/R"9IJ^ >%^.W@W^.WD[7%Z$9R]#EZ?OAN\.SX=O F.S]Z].KW4OSD_N?CP MYI)^R>82P(_A_AHR9>E@QLI)U#W;P5? MP($EX8#!$&S0XP@& MG&6%K-?'HKRR!"2#XX\?/12.8?("(U_0= @T-,E/#:G#"_T+--D6NK]2GP=> M,;C%8RJEL]TCXF@6Q2F;A*3-;HIV&T$8/ST 7GNWUP:\5+;CA&XF20^]Y1'^ M(/&V_1!\5_S/\INNGQB?H"T.JEZL&J*6%D&K=#BZ!+'H$T45TU(P0 M&%B%5D:)0Y9FT%+$:"XE: E<#7+* ,^MI$PQGD;^Q] <.$5)>:>(\O!<)TJ[ MC=>39)4-@:I!ZS2E2+L6 L>WPU?R2EIGS70FK#K$DH/8?(KA.X!YL06HV9J: M(ERL%(1MV**))O(UO ,I ;UA4>AERAS]JKK?LL51JRP"%'PN)U_$YKC\$Q%6V"*0W:C_)6H18* ML-1+.3=#8S)9=(C3.4P;NJA!AR4""V$ITR+A $,J!AA=3Z8#%2\O) [,75KF MEVC?]5QC$_+7Z]8Z%F.TJ>]-7VFJTW5BH)5J9 0F(WC\]='C(/W&8>I%C2-C MY,47LYJ KU,N"BQ+/D>U7Q*1IJ1[P_E8S/AMM&-\C_>A6X%\Q,J&:VCPU13) M8'!XT53I\:-[3X.V3R4$%.=.T(MSH%8&MN-GK"BI:O<0U1]3(P-XM7B"P'Z] M(>Q#KI2:53[3 6.-P!GAX %QKJ-#Z<3O]7,I3']C>44CVE$PL^P0]32(',6 M$4GB\V:*-F06S?6,&F&2S!Q\EI;^2[/GEA)Q#8TRI.3$DOB=!/YBM@IA-28J MI^INBUA+N8 D@U5(0H$&RWCQK]SXZY6#!^XH3/?&#W/2K*-&P' !&(R<]#=Y MUH+<8[C3!*1B&*%%/205#5^0]"MI.S6=F=G%V["\U/.9;%6)6 J@$)9\=QMG M>F\?;<9*4JZX#G@QRE1"=)[G*E;I->H*3MDNW$;?H&JH#0>#[63T!*PFW)R& MV=$&\B+/Q@;&M1=DFV$TMY[ DC+)%$Y>77"# M00+W:-;1*$.WX-1R/LFI!+MA%B$/88.AB.L"=^4PRIC-QVU%"YN'XPI1(M?I M36Q?$3N"(> 9@\BEVG)>',Y5Y#M<0['^W5FZ4!\7!:O?!>./0IY:$7C'#TH! M-0E.VCQ!:-B@HJ0;<^ 6U"VH2?I]@9$\(G?!!O*8B,GI[)MCA5@^0LL\FF)T MUW8PRALBZD"]!(.DT]0QI2GM&C=95++U(^J+1P'RQ39S%LHY\2>Q-'LWHZB5 M.4K\+DKR(+*,R527P"=:W6A=D8XMJ6BB*O)E5-2XI8[/_CA]M=4_"K#=CL*@ MJ'X_QBU33!EVCXV2TOBFVEIKN?]=\3C=BLIXU]Q)+?!HUW;".\*%63K2(.O% M,>M&>W"08&**(HIIS,Z+[,D$7)C40+5YDO7OE[T+GCMO([!V"2K>>XII[^>; MM/5*]-4;C.M],:Y.9?A]$:Y'@G"%[?R%"%=,/CE/N4=W M<]N*G?#=)OJPI L"AO^Z@]UX'X?XVJ0?T:=QD'L>PS%ZS82NW>22[B[6[=QW MW8M!) EKMQLO[\$ :HD%;Y0)+2R2-Q ]]Y>W A%(RTUA08)B6F(@#Y>J*?,6 MX7=4=S)^M_,]AOE[U)6IIF#,9@\) )7GTUE@)YJ:&JV8/% FKLV"3@$BC_\2 MHV($6-;LF ZU/UUII/(%W>0=X;6?B#1CR+N#$%(G%UK"PB)R81-+%F -]L@!M\2\XW8M1E2^0\6W MV-W[ 9?@(4Y@Q^Y9SZ-75_$X)ZD_+5YECP[Q+!S/H=>C16OMB[M:9?PC4KPOK";7"2U?3Y.5_)B" MP2G P)=9HX+?*92^UEE*"=?S''8IW(MC$P#4\T<39D]K9$MPL2T[O>?+N'M# M5TMS%%'C(G=WQ50ES+5.J6GF%N\K/2ZFLZ&D-J91TCR=-I3;ZQ\L&<*-4E<; MX]/?."TT0'MCA%Y#I_N9G](AP."G7>GH[W1@IXQX=)0Y1/>24?).'.&B^*^1 MK1W^_D&$Z^!6\!>ENQ]:S)Z(3*'2G:3CR1:582 N6(!,]=WJMZVTT<&%^F2L?02V4DV8@@X%9V=]7Q51QU3@XC7 %8LYM/LSD8"L-\,U0AT08EL/8(=XV)'Q/-"RX-XV<5LZE#L3+J=]*RR=9 M.'ZTR:!O,N@K73BNVVCT@O>Z]9/M2L7!?ZGF;JLZ]DL\Q265$:97MR:4EFW= M3>A-8!YFFT"XJ'XVNO2B9A.'QW^AG/RC, .VFV9U:5P"CKOY R?3T6K:=6?' MKB]HEM7!,KN:G;-6JX+[R.]AZ?3XQ(@D6@J:@_ZK.WU:TAM->ND7J_6/CIZW M0&?;_NB\5I]!G]VAO]+2,WCH;I[+VG@:)$/U!\E6.TI0];OO)T3]=;%>' NE=KK@3/7&>(F9):VR)E')L#'=Y,E4,]^G297D5*AW ME+D'-W.B]GJ&7TM>N$AS#8&4T57I9]/@P5L>FHL4VQ+6:2W\G?8.[K#Y?N8F)AR")VO- M!UZ-"<-K9".7QYI?2\\3C=>Q;%>:A<+*\T=[<#FO'5*7B;'P>B(GA>D,P87& M4_"LL!B4':PTH_RY4UME2B4I<%6%RUXZ"OZ$PQ9#X;H?!MK+6!>)!;\QQYCP M'=?0[KUL)S <+.X7=GF3:!7N$&87TX6](\60V"@8%GF#1R]94 QBH."'\6WP MPEDTU]IRS^S%7-6+Y%A6Z-=OX>[=4<\TMMITU/,.<)Z>KIZ0]HC]3FC&5"P" M[(L$)FZ1L57[/UC@^P?,YZOYE;HCLKVV"TI'NH/:KTC)+T3!'5*KEU&)O!RA MF>L.U-;ACL]+93BN7";UNY%:.$![@(4F25%9KE7+_-[,*":[W?ED;5WZ=Q26 MCR7#T/ P'QO6W_@]COCH\&%E $"P6V>$DG)03!0[EW2* 0["U2XVZUB:&.H, MN9''3FHM35DTEXLBC:*44^+?O^L6Q\#.)A5\:.-EZ!C$O>7_@I$@8R@ 3T0KPJ B0#0W! M"XEG36N"*\F &]?2W,#HIBBSA"U@+U&![%Q^YH(:2(^R)DW<' 7B M'B5K;F@, GJF'OFSM*=Z9D0_L[X0#$T%+IC.WN"%(_AL8M]81S<3N[>\6V-G M(],ZFIW!""Z:IENP.Z>*IL\D5GAXI=+(4;J7KCKW;@M/'J4E46U5SI11UVIE M$T7L9FH?5:B9!!*D:1)'>%4.(R'1D_(W023S%$V0EBC)&9&W9+THU!;V' M:)%J)EU^, TG?E8YCO(T-G8J$9S'$6(M1O!O:8]!?%$FQ=24HPC9T=Z!@&(8 M<+%JPEF=:G'>ZTF#H3Z87XI)^?%@L(U]H5Z\O/ 6&MD)9:XMHM<=,$TQ+F5! M7.^PFX^.C &>I!7,!C9PI.44)L,_F3"-2VN(4%'\];Q 5&N.UB)+ECLR.2.= M[U$6D(*-&-:8EPYW3EOJ_-$N!J@G\Z2,&FS C%(RGNO1M)[D=B"0\Q.NIW(- M&>9(&0)5=I-S?<=2$0?F'"&TQ/Z(:T146OJ@9>HZ\W,20*^/;3M7R0+.&V1$ M"5OX>T;X-S!!K(!V-0ZK:FH%\6]SRFLJ 6_E\^27HF3YQA^B-5*E)>U;NZYC M] =A5A-2HOI^O[,BP;E^!ALJI]8"H 5_YL5(N>-RS/9@Z$ XR J88+92U")Y M7*AIJ%L:8;8=>/4/>&+?([:)ZJ,M#@[ZNRYDC]>W'%G"3:WW:0PYZZQ]>V- MXO(F\N*HRP3W,9I37!UA@M56YV\&Q72#LI&X2GB36^?[;!L([)!>2U:3)59[3V1\$O. M/32-;*M?.8\JCA).M&&/[A)GC$*FG88)S;Y>;LI.?J:(K+2 N6M0\/D MPNNG,FZU^YW\XZ4Q:A[-^'_",=!&(%E8Q MRUPE+1 ]W+)'UY#HBR+)1C Y8 MT:H6E9-91T:>;KSF0G+9N(J2!$T^XF_/K].RR*7?DK>G^$B-P0E'PYD)@%V] MW%3*8I](<\-6 :NV9"J?!@UAQQX.VX=,:']VG1:9JNU+@HF91 Y;>(6X-#C< MI9*H2-)F"H;6K.##'5/F)1E>!9CF& 7!&W!C-_@'+$K)S!E3I=@5PC,?^[UH MFBD]5^B#$!LR]XRC5@\:7BP6(YI$AKJ5*$PS=:W1_@)#8PV2I5;"S M(PM K6]RSHX'[T7IG^-7:%FI$LWGD1) EAX5GE8T,LPA;G((VFY!VC$XI]]J M7^=E"HV>[$1W= AP^W>>=J($&K8BKMCD5.-RZP[K^JSSRF2 MQJUG%@Y6>1YGM@\"7)H7^98^[$DD>FSJ=3>85W7M4%/4,ME'M M3&<,YAVZ,&@_$*1>9'J&[/LI]S!!"WP*&]@Z3TXJ!50(SJ"S)6OIT ?&2-8H M[VG72$+$#=M0[VE_P=E!L#E3W:?.$"?PM <#4\F!N%>8_O^[HMBJ;6L'[F>B M?5%P"[.,$DF(B>"A@%ETI=6F MWD#O:C6=9<7<4&YSG(MV6#I%IX[Q6A'8VQ-5"QFU?XCI+2/B1,8;(_8EVNY8 M@KIM9ZQ\F@3$[A6"YW /7)!KWQ)RQL_](ZJA1?\"'P6K"?2U<-D@2:4(PL)]XL<.Z/G M$SQ@V:'2&PR>"T<<,\_E*BJ'M*VB)0+9F/L:_3NN%%X.48XRYP M3$G>)V3<:0^6@E!>_7W;TIM1)K[EC*>5-T 0Z40<6.3GB? 9<(:,J,A%%^KK M1AX4;>%:<#HY]"N6T4V X4,"W#<5G#5\#H!-R*58WJCT2;61(W(:&$8L[!:R M^*I5K\_=:T?45C@"+99A-BR^T]D(4?-BJ>^_?%A MU,JHU+%A"M584'W8- M%Q(B5XYDI&$5*0X-_QO"N2K)!#+0R'#10U0\V?CBMOT[/)4>L(;Q8@IUQAQ. M*6Q6@.H/V+YCG[H+!S'&9H!.6MYI^&WZ%#)3 (<^+&C(5/-K<^-/A( GNN>/ MP3!8ZNT?<&F^A%@.^T#!?OL#ILM28N#:O12Y7D_U^ZJC,U5W?XG09Y44TWA) M!2+&PBB7R;Q:U]ZLD_;%5)?;3HO"6=)J#/QZ^;2C_^3"S2FU!QNEF JQ/2,$ MN(N8CHE,4%E2D4I)O5QM)1A18GC-Q8C:H,%:BA#)4\N"BBNBF-T"SDI@I7!Z MS5L7/("*HQ[%* S&63$$09NH**LG)L4 QQDREE6F=U-_N! =*4("4P/MM&0++;:[ MHZT;:2IEBO PB9C9OG#PK6TO*,L+SG7)F)51@=$!\]#OW'1-:/'[3[#YFF[= MUZ)W!6>7SF*S(^1V533%A#+"0/4F24"D:8%D,NU<&TS:PLMM(A,:WFBL3N'9 M8>7#9A6N"Y$*X4XQZ#E<%M/OLY!>A+!SK#9S7SRKH7)]+&Z.6<[+0C&4178+]F*FIOI@39Q>"G[8[D-U3& M0T.-$?=/"CTI%"NM68-P\EHX3>(R'2H"6DDUM@8 S(I*)$+4+7+M*,*SI%-^ ';R* MV80S_"-J%*,]11PJ.I)+)4%>YTY?PD4/+=A/JZW4CG8?4:FY Z3]FX#)Q3NT M%1YM?XN0V!=4PH+_6OB:8WF$E8;GM!N_?7.(U,HJQUPU'-\23.1;52MP6F$ILY( M]RW X1?,]4%A#5T?P.2%-_0X?!0](Q)VD8BY0OJV1!6=I%! &QQ5J9J2*!69 M.3K**QRJ 4-WN4T8,:. EIU931:"??M6[[12JEI2V2D<<=9 M=&/,SV."B-QP 69*R9.AUG0Y%IOQ[88L4-K:UPTJRO6E'/2FT,$=S+Y%%78 M6+X$5$%(@IOG"#(Q'I_>+T@_\XQ&'66QMD41^*016T,*Y10?ZL*\[ #D:M-Q&GGG2$@1.(0A/+3X?^=2# ^@+FU0C9 MLO!^X']B3Y0HP?(KF!T);^K,L)YZ;<1W#*$:%QV:WP4I'$*5 )I/@6EE>W'AMN M9^?)6Z M9PLC> M+J?JXGBW)'6_!ER :8933W30QG*]NLWO/-+>=F,;OY6-0^2+QRL7?9B4$#\( M*]>LA[%2Q^V""CI\6!5TIX=P:X=>?]?UL!EOT!$'<-FRW&)G:OMN7&>/<-70 MYGN]OPTN&BTT!\Y M>G>.B!K(I3^,RP8+;:GM0L?-#KONTP]W#HED:"/L8M-X)H=-G(,.4E6WH4/* MD, ';, BT[Y4:$A;M3J:;]%:&DB!*%&DK,-?X/H3?H D#8]#^@Z%$CYQ%C:4 MQ+B[UN:F-O5*Y2 XLQQ*%,8I@@* HD760_AG)HW==*Q3Z#5:+%6X&]$*YO8 M]YL,E1541,*HI1;.\=4/# KL'@)D3(Z M-,6 /L/<.FF&K>@660;>J>WT!W/?J9N6TY)".$UOB37;;3=NWJ'5 H'?I-=Z M@HXB!!O*//E0E)"-!TMM<^@&[C&C/+=\<.90@_.'#RPYE&",L2!M_).O M-2Y4'YXFWSDZ)#WNGV>5/9P6CC,M.6^9@WKN'&IW'5L>3FK)X=4_[#QO=G<. MSD?$=(:4;+ AA M!$A%H[^7U@W7ZD;$#I>7'.NMYJ ,E78),RCP-$KY MW,:?](^.MLV0Y62.Z!B,#-<0WBDRR 2(.V]1-, MMHF@%37>'[LD):9! ,Z:Y[,NS#0:&N.BUK!P)A/ 8)MY"*;9\ZUQL9Y=!22% MAW-'SDQ.6H@@NL3]ZX)A4M'4"H1IX[%%)=6Y"<$LRY!P M<#PQ>SWG!HBB:]UM[&@ ABT8P(*[K1?"V%RMY!!<@-"1.=^J(!"FCIHI%\'8 MNB6XXC+B:^0&CUH#)QCOIUM_X=ZX^'#R__SRAP+[/PJ#TU5=X'20$ ._502D0WZ:4(P1GC(H\Q-1! QUL<.C?2:8D"4/B9#=P(LN MKN'VN[A?E:[FUK,=J^D%;I4E1\"U5%EA8OCK,GGRO<2G602_NTG@;Q+XW[4(_H?0F[=Y MZ*>W=2$*7P#ZQQE1:U76U#MJ!_1' I&+H,G\.C01[YIE:_?T[-AVN\7TOEDS0LB#%0+YX%3 MIX^HW";GTA1;\(!-^3;=I[YH!WD($MXX7((F"VB.=62IP8YY931&65"F$_!< M!X(LN< =X 6?.$RC%[2D1!)/LO%0Y]XE$2AQWUXTF'##^AL)2)?I$E MI0M.P6L4_@8*G3TXR\#3S=51P2%.*#:&U_OW?JO_<$":Y5)@+,8O65[WG7[ MO7__*.3) G'M[XR'/K>U:V\IA[BFZ+LOCU)^;#%N8UB@Y>U;#'7H5[OI+6-- MB79XK74GPK,SGLZ4UQE;O)#_7PLAPB69=\HG<8SW1M:;1_DYQ[M MZW NZKR;(8:)24(N$$J4FN'-P7I%3E5\W@^X]^Y33]M:Q,ZB&5P))T9C*S*M MQZL!@E0%X $M79+FC]2O1K;U&?4^^3F3Q:>&,0N6"*&G>WM8#K^13@V4(DX[46HY\KF%/VB0 _.,X=LEIJJ2Y0, MW2#%/NE^N7:K1]H2>[ZED^R%?O4*J!('K-..P6 J 7P)@C^4S$,@N-R*H%[< M.(2:=<^*3 A^=>C>'D5+-9AY13\B]64::^OK5);3EFUA>'>Y2O<8K"VFA$_6 M4#\.:L.CK0/]NIE$:,GIJR8;82Y@S#P]NI!?S%(SEQ%SDZ$H:2%M&+C%^2=V M2MWSUSEYI5T'R@<7,#K22P([32N=S(O2 S1-P./BZ,HS)%RATBT6428$-@-E() M"5>7Y12VL/*Z;[PJ[1ZGX?AF\_NRJ!5[M -NB:M++L[BN)EI&MX+2Z@NI_' MZ4N/Q84.EIN*]AP:I$Y#;W.RV@PFD1/=4#9W1-$AT\ 28VB*D\8^":]+[<$G M!(:+S-=C%>_ODO[>H&U\S&#&3:<;7\J9,%[.K0A[45ZY0LU!SY34"/P41%!H M#"K3["N/09PC;," ]'?@7TY,$RD\^UC)C LB34CI7NG4@# T+T!4LPO)"HD[ M7Q4SL/TRLMY.X4PL$_9#B/N33B=H=JEPQ58>--:=D MFL$[.U0*$U H12DE9[;'%JKH&S.HH&[*' V^5=_7K6JK_>WGS[]IM=6 D![$ M/,?^SLXV8IUV]DA89#H3D!1V*^&W.T>[F,JHZ*0^V%U6#KFS?:2_\HR,,.@? MM6GMZ*"^*?3'[Q0NOJV+)( ]AR&EW2KN BM_,"CM#=R:7C BM+/M1C7MC7 < M^SO&X)#M1BYWIKB1LODQ(VULJTSG+M@M+Q_3:%/LF6+:&+G_ 4&8Q7'7:-$ MWR.+ADBCP%#7*)MC LUTDQ',F9TI@NUDF?0I'(+DR.LZ.'36$:Y&X"V<8_4% MNZWB&?#NIQ$@)E9'R0A':SEJQ*Z:I+.N>TNM$[4,'1=%LNH;_*F!'_8VX(<- M^&&%P ^W&:D#TPW4J45O?CEEYN;FUY\$Q<] M,+EZ7N&FQ)(MD8V^B;1:0OH=)MZ1FC8U C^7Y!L\KZM](;&V&:XV9VG#ED,B8'9U0>([@1^F,R.M4 MW##))E4XEZ'SI>4],E\RO:?^ 6;4FIPC _P+[J&0@VL ]D8992(TOSNJ.#,C)S0C7,@E)3"&?FH [UL3"17.*'@\QXY3 MXG[^KIA*=)JG[5AO"ZGA)@/.^?UB3O>BH GI^KD)577>U[('!P]I6;.!75%-"V-G*VVAIOIGZ"9"(\4+'_E%_>^OOH68X)P+R[A_]0\@/A?*L\V?/\5:SK,&^URI/V)S& M.D:,?^HK(F01P[Z;V')_FLDK(4P M)/;D3SX+L>V TS#]H]T]"G_2:%02+BAFAL]14:I\M'A7VG'ZSB3A')\G+C5I M97IQU$DO1(A'5->1IHEX'Y57(=7P M(C ?=%N)RF0/O*#765& 6C0,D^=%!"OTOGG4;8?#W?_:W M^OWMG7#!11_41#$$1IQ1%# <<;]^)C37CQ4GYX?[&]_&N[M/C_:W3X8 M1;M]B;?P%:>7)V_[@_/3B[^_'AQ?GIU??-K9WH/_EQ]Q>E\[0^2YH".41;-* MO=#_L"X-7%67\)_$J$)IEB@:BI05>!F_WDQ@,VU1:UFPUV_*:";NQ?X>N5'D MP^C)><@)U\ZG\PEZ/?YZ2PW<@45$5_!9]<(+0%]G5978("]5".L=DYONRAT70+C M#L1@M8R:3!JSC*0P"G/S3449?95)7)D(&SJ=!XKY+7@)P0DQ\FJ=3B/U4GL< M8*;/Z0%-+NS,=(@1&[)., 57L"6)8K@ALE$=?[<,\HE2TR"=ZF,H%"KX6TG> M0X_;TXGZQ1&<6R-X<1Z8-:71RI>3BTR+2'7?D=FU2GK3.KI?YI,"LFI=/NN GG/ M4G:+O8W)3 I(U]O+?3Y&FO7K[I)Z*X96_J0BEPK'[ZCI72A"OU-*R8#W2NJQ MG'ZABKZ+P\XOI?1UNP>!]O$B=1=/:$"JK83=QYX O MW=N[UZ7C$@\A;M9@&U1YD%R_<[@T9;)"XJ[G&H8U+MM[$HD""Y#;-.>>[/$%5VYVH08$W#O5-SI0[D0.L<+COFFC&&X(C_+;?% MW^HS2/G[O<41H5..'/)SF1F74'NH+V#V^/@%A!YM[?&-2#UPU]!X#+()1O, M3!_^LQ^$[J,UFTQ%7Q;S**NI..BPMV_HPK3:H,,@XU[OE<4Z/_X6?[K&*&CS M,_"9AJHTF_B @UUW-A>9171F+J+O8FERSYN/>49P[[8ZK \H9%,M>DT-&=-EJ+WI4Y&%--"BCG,N\AP];D\A)WE0?G3?,&. M.0R-Q>#0D8 M@T]#]0#N&'*+N, MS#K>MZ<,C'\P*]/,';VTH\"&.B-5EG225S.T2.1UJ)^U\-NZC\N[E[1YBW3\5 XR(GHW[F$>;V8ULMOAL7!/.SZZ^%A@)-' M].4T #*1:JHY211F\@K=EVOA0O*6;[=;*Z6N*@[+V$)HS^ASF>[&.H[(D M@"H%H:O6'%=JS,P!<"6;,E@!N'!+?KY@TLV42/A<+Z9>$#=NT+4B;&9U+,G& M9[@S@/T>;EDD+#ZAUW&L:H85^+C8XM*"[OEC\ ZI44T")]C<1+(U;ICW'>IJ M,?8KZ6.(6[<7#+ 18*I.E#8F MY2Y%'#?,^SL!5:FS#N8$E5Y78B2;B@>RZ$W4D(0="1^7=#*@B(BK#V=@L9)] M*M%;-JBEQDIZ9<%-#:N *\"=RI;;K5]3#>[M/_8FQ&W#V][0^)M285+Z!MN. M464VEW?#*4]Q3,SP]^"%,4[1S K)U^MW8XME'CI4L;4.'B<2*; F :9V:+_B M%S&F-XT1@9_<3U?YVL?3,8%1+YMMR '&2)"( 1^>$F\,#D+)'[TMBL3V>C! ML@L= ]=10>]W)I69%#?YN(P248Q^_,K9)WHY,_ FM]#4Y_QJ*21C>4HE117" M$#%^%?%F!-WQLL_+_3*"$\,?*]65@3Q187GGLXBREU >,5@A*LTD-?XRBG;U M;:,=XXPB# :F>0>&&GE>) F]^ Z\@%*OF/"WJXS0^[L5G+W!U'Z-AU- MJI%1I72:O+#]&YU!4?6[+F5?9NP2KQ .R$GLN-T5J;_@?('W$3N-B%,<%^-< M1^]-"@8A[PL:=%G_&P Z)_C0&AU.MGQNT5XRT0_I52Y%:_E^ M^.;4N-/%1$7+B7Z=+;& $TBC1M-IXG(8FAQO4>X?=CLU\WP: 4I=J=C "Y9 M5U57:^J]79(KCNTO9**D#2IV]U-L&^MZ8;NCE\VE4T#B,.2%3A:H129YX]Q+ MCNI,>ING9:)Q =9/MVRB'LE:R"UYFN&?PK25YFATHG2XL$U0 P9;@/&+A0CN M$L(LQD2ZP:]Q$Q&\2N +I71P-/W#(F+S14H$; .?$F>-&9R,2)>1P)0X>=,I M/!79.C$T-Y[STD0)+AUIU5":'&+$K)F*LDZK*QO%)F'&K[&*@:1WBCJ9N]M0WYK,D*X&D_:-; 8B2@(^:\K M+V%K$3NVHO2Z[%("POS4+0]^?;PD26WY_!(%LJ@^C,[0=/<5.X6B4]C9IY4A M@EL^.#P^6]O/6?^LYOA 2H7IV#H9C3+SZRG%#;C55RM18*I;0(*FJ6"$4_9\ M]!M9F!C!IPWPUX=-D:MDEH_KY"U'(-')F;7')M$>6FK\ M8),:WZ3&5XAC8&6-M]M[UXF9@;T)3\YM$+#50@:]1 OS%I. DZ6,\ZJ)%(UB MK-K$D)^[MP27BL*JZ-Y*C#/3#&W5!.-#H.5(V6-H(I:C1#]'$S2Z7IH=)U@: MA6Y_FI84+]0UWW1'OV:EH4+1+/TW*FY[OI&OC5?JZB*A$HWFC $S,$)SCO I MY7'-.1IZ(4OTT [$%_EW"^N_4G+Z5T0Q%,B(R1^B+<0D!?0[_U(;)J<2K"F8 MWD0DD-9".O^U8DU/R0O.Y]\AV6=.&1>Q;# !OV=RDH7+;$^FYD8H;UN6Y'#N M0E%(*%MO)U4^7K/NUOQH7@1WPU&TI;*P!A>1.R3V-V+C9Z2UF\AU@EZPRHL+:C:) M+53 0 W%Z*3P$( MIG@P*O%TLBM5E+%'2SML?W-_!4^TJ@E=^TBZO1><\F#$)Q"-CRUVK8HPHVH\ MBI&E>X&B'#AWO'_D$IY!F;@[KS2DHU)NNJN*F^]KFJS4:I[E MRFW8H*=343,4D(@!#D%.B31 (EDD5!OMH$?VJF-VEE3> MMW$Z6+_DK"D2V=N2(%OD1PU8['(SA.!&1;B:=,;#>%*$AX.[-(H0%W,I/Q?2 M#+.&I5&W'A3@65<3/JTU^=(+P8-)Q)7D/]J%UFXR7R9J:$H0W1&U4%GBG M *F7KG6W&9!K3+,2. $3"94 ?D !CK-B"*\W81Y]:J11YK;_[?'9'Z>OMOI' MH10TRS51T@[X71IC0)<,,$B78I=LMYP;(1$S+ M2J>94#=JFBXS57,541\2"7W;_F5Z#G'"=;K$KI]>+.HV8HQ267?.9+%885#; M/!0L98*W(!4U_5@6&H3/R\AP2)U0*_HQFI@CUJAT[H:M%GA%G'A%-PJ]%2X. M7MG9TLL38-]L-4WC4./EL30-@^+PJK;02T8O!FIKMVAJA$$SQI8/B SJK(=( MNA54L-%.]T!FFW@812504@SK1&X2:&3\+&0XVX4'X!K"GB4E@B4.<-/,K^DS MCM1Z9LW/FJ[>[(Y5YJ>+"8YC:[J1/GS:3'6U-]$%@C^=ZG4E-)&.>'F)5%&](TT28^%. MIC.9?38ALS7]X.+#A*Y#+$@0HD2-(I0G$9GV).GXGK9U=.\7[:GB!"C$4E%% MK@686OOV3BFUE #?-2[+UV(R:J6$^$ML5K.NDXA"&F!LY!&<7-Q*+JKH%-4' M^Z0IL<0HYX6!,[6>@(1?J77%V P6YLK+U$^C/S%"!&;D6.DV<7Z;W1E:8*6A MSY1 D?Y(>Z0VUXI![_-,LMH 1^,38/39R39 U)R$IZZ2B_DJ2\9/D[)XJ5:5;0/^VM;ILJ MBH:ZE"+<(T'# %YYDVYF4)O*'?.^&$?3EL]B\5ZB!-&1YMH8)>L&+;\E$D&8 M8_BL;&;:8;.8D5;OY8;9F\.G6?]^N$GR;Y+\*U[_KK4H$PNG,1EK.=63HS(4 MM>%V';OD$CHY/B4\+%: QMED&[4R-$S1F^O%\XZX@[S7S,2?R8PU=Z:7Q;E#R= MDDN/4FOSAJYS*\T8#\ MI:*9ZY@O'1\"6S(R!&ULDC$_OGVY412G&OA B54J=M0E8<@99'\[5?6D2,BR M1#D0A"\(12,\^F9JG"6]QYP$G(F-$IAIS@SQN^K(B+F(>W@Y-Y>P5OO]R5S$ M&=SBOI$@M5BQ/^T1'MS)M$$VZ4= 6Y4N16WF@H.-*\,BZ,OVC=ESM-L'/I M]OC&])AF6ZM:B\(J#@M(/3XUS =CCQUA)G,Z$MM38[$QSHM56EW'YGZ @700 M[9-+Y/RMB?=]E^FY%I&4 '$OMNB3UBMA2_!,'!T<'NF9(!:GE.O]=4UN<0/*%IL*!L_H?/CYUT4O97UGS#*8 M:I ?DGH6,TERZM.::7QT)M+NMLU<+IW+7!J/I_\V,SEKAED:.]2:F_F\_WPF MZ6C$I7]>R]* .&JC,JDV<^?,79.G>/XQII1.2LDHP0QJVC,AWW/)AVVB:S.; M2\X52OT+92INZ@^]BYXA?L#F29N)LQ.'H11"%&AB#*4;A+FXIU_ UXLR#8+" M!$4>\63SCQEJ$WT.LHB\&)K?%;&[OEFW;F)$CVX6W1$JYZ:>$\:);[$O3 M0 MGO.V*4QA%%W,0$VOU7@>6B-<;N10+1:WN+.]X'649ICA,5ZXBWJDAI2Q2_?L MN%+=;6G([FC SR_E"*T_!?0%M MNP!MPC 3IQ.39NE&JC%N.(C"76194U.-O#3@58B>XQ(AO!M?X[2WE^8DLZ*B M;JP@^?\&,PG?65,F/5WA M.9)%,MV-.#DCQ1:AKCN)1I19YLLZ<#AM5@5_S!)(RX1OA ^P+K&@0/*-8D(T M%+*T(,[W0@>.P=AR"E=\R:$;8B"[53,F5^9%OD43FV+DD4:Y>+T#U9% KE.1 M(O#+DM>+9ZJ*I)VNVR9,4S@:LX>.Y=SCHC5D%W]BDCQ)=5->C/C/3& -G,FB M:HAOA&Y9L5[F^4RO4T+/QV6*(I:Y@R%PY1;*V5PGZ^<". BE/3 Q;,#3826S M*)W*35%VMT!X!0?PFND&0IIXAV\_J'!..Q; %;E%Z46HY!$[Z**T.8)),W9SJ5 M"W@I6V=LQ]L0:V"*5%)XP-K&8*W8?T2D"7 GI&X@$<&K&Z),'$>8A\ C?4@@ MWB*_2WOI&C9%G40D3"K.+Q%Q$( =)E*0,9PYFS6U)4NY^Y !>T4H(86BI=T" M[VDR)#S?@"UQ"Q/TX],_NWXT>>-/Q E]3".:5UXO<\MP M!@-@ M- 4H)&,=L+O*Q@($?L H;Z@;'42$]26-$L&F+W;,)?$R]F6DW8 A]S MR&M".7H=1/Q""XZ'+:75CKQ^G2WV0%84G>/:[/E28^*.K7B7>;'(QU8U,6;& M;;F";$UE,WXQEK:U]W'[G,)"4FN1]HCPOD+;00IJ-4%CC&/8Y M&7@L. ZI H7X\)VQS2?XB+#7A;@.W@+&4G'):$J5O11HP( @^Y.Y5F22[+Z! M&1@GA8"AF+1;$%;)8@]KK];,,]/Y[(;)GJ0SJ6I_R+VHMY:S'S%]<8.O8#M' M4@#!%NB,&(6$1Y0@SZEZ0>2314B_!$+%HE(CO#DTF)N0H!+7X^%#@NL."[S5 MAOR(@0?VIBE:@^W\>%:OU-SN+M:9>EEU9VU-WF\5SRU1RV\2J'PB2W)&!@H? MT?I(%LY^W=[0*4DY^:SBAMSZ,VH!62[&!=U0/IW_&CT+?[_&YEW@N%\%'WO! MV_@R&H^Y!SW<^CVL2FKZ1!Y/4C5:?%QH3\!$U6#Y<,QC ;=M5(BF0$KT2\)S MRQY35IL!<.>.W#LR3%$;M3\EBRGO;C-RT M.L.\RUQIKF@?3Z,/>2NI*\5S5N-)5BRL7*ZS749T-*B$O'BW$\F_L^8(6:4/HWWE5 M8UDM4]63$J0<*A&/[9H:(=I':X6$OX;[@I^!RB!B%4P4 M(=C30B]L8.FZM3%M1C.$GV#2SO(&T AR?!A[JR15<*?;[L(QY,_X0[1(G3&3 M832;S"OT1T*G0ECJ\L#A)I ^IEE00W&[V5D6Q:*GN'D-@LI-.P!,DGFR+?>B MS[5135.@8\Q@>44!1C/CB9(T$F@J^-]1&378)(?0Y*U%XV407@MZGU>JFJ6& M MH9LCXJQ!G7C]:([LH=H9$DT+4>UN MP01-)L92,HXL$!+-D54*>* GAR6-;C4 76@FAY_@!FRF:4742BZ"T)(QZ3W" M'';LQW.(0^PU5R3T(>_6B"XI3^C*7CDNM^8=2:E)C6V63OW3B<\)^Y?'.KR@ M>3!&2E;=4NH)93BE5E&KRQNZ:==:ZE L!&-$Y2G.HT/C6&O)MQYEZ,6)I*J5 MO1;<4/0,26Y]-+P@6%QJRW5YD7371I1')A#C_HMMEXK'[L<87'WI=8#"\)&) M:;"7I5? N8\IH4$1 _-LR%TP]6ZP=2*+&U;P&29MY.,R6OZGMB_O%Q*R"J$* MM6_MTJM_TV(,HVXLGVBN:2 WU'QW^(>H0"DH*NUMN'F,M$O@@B.6EH7PA,[) M&OE84W=O,9;O3B+/+.A_$PL4R@_I"L'NP'!NB6=\UCW#C=7FHMY/YE3&=W](A- M?F#;G6%3XQ(S#ARHYHU/M:],L.0HL5O"F)ORT&]D9YB>3#"//@_D(KZ]I$-E M/8V+088HM_&$0RW40]0-M\-\^624">X-,LIO8UUVB)8Q44R=:,7CE>DG_YZ) M.NPG;-8/,3XR2C_;A>P: GEJ1#%)!(T[VQ2)A9L>:\JR.N.&M4E!&YS=UF"B M$JJO$10]T0I)"$/SYGOM03TI89%J(U!Q]S9H-QN[X+T0(/H\0WEZ<8(=D>E%OBJB* MA@<:/G'FXR>R2>_2?;H=*1J8YT8TUFZ/Z!$V>]06V+K9TI^S'6: ZY MZE2,!TSYH*2]-8M@Y_$BL,]9*D,"#PRI\T*W<9RAUB^7XL7;_%YZ'@:^SZSM*9(EP/\IX!9HH:P M-;7FLV)G$2X:H-X.:7DR:X9'GN30PMHU4S_\FI%EG4*NR3$],+S&?\/4.DB6 MN"A!":-J8]#*P\$&0C(E\RB7!CF@./G\DSNB'6H@$&$'C[CNGW&G..AM[Z80 M;U$! 8+KTCNT@$3(T]RH $R\1*4N+/-UP08B<:=ZEA[K5!H1CND?X'"ULJ2L:LH@?P^S"$.5N36U:\09 N>E-GCCM9[AV9[2, M3WXJO4(=*@6\&>7KJ*5DC9M3WZ 5E_(J-:KTL[Y1?\]N77J*AF($C* PM^V* M=:'UQHH'MF\'7-"F+/#NF)0B"(:!<;BBA_9JIQ 1?J21KE<(PI+\%)7O"#RN MT%(;_-DD8]'^0U%P)@^(%\MEB_9MC/3KHO6&I0;.10M%>#K-P"!57D&-<&$8 MK2T2U6,<4A2[YC[-36&52^=T=&[I"ZOQY5'?<4Z2*G3RT=#KN*I&JA#1) M9@8JJ(&.)V)"&*0);5"JOZ(2/:H+]^]LSYT.C.P2Q75C\W"4ZTT9X1D1QM.Y M87?G#J8:6'Q'/2&(%5#7-D_()BX,W_8%Q$+"SA?4A>H6EU@UTRERA9J[:R $ MSJJQT)?D09Q\AOUMHD9L%7>_GE9S1J&%'9Q4@KN+XBO.BQ)Z'0;GJH[N$U_? M7E^+9F^'LN^\UEUK36--&1FQR%$\O1U04H^[<6YJ=V]9M1OMP7-K J9G=6#5 M,S"OXWGWZ;N&6NP5Y8H$J$C-3B(VU$=2;PGB>0.F/R&]O5,/5;\U:2[L>3"( M26GUCW9W0^I,-F7@XK.BZZ<_&]R[\_F)#A#9>^UUWLO]X<_<:FOA<$1E0NR. MB6?CM/;+E&/IC@/BZ+9V/<-2E8%3A9/)@ V:(39/]/9&6X//@\C;7?K8[A++ MT##JUZ6BK<\K$XJP9^D5:IK%83MM/^*TC)NIU/&OH9S?ZB!=4C\;T\T5J5%U MP?!UD353<[!380)'!]KU#A;X/&#JLCJ$-T@#T/\49IE'..? M:X324\S9[VQOWUKY& M!@]P*+ DT/ &6YRI=F\$U6>!15S?2BK P1@A5L 6P9$3E)LR36S@I@R;KIC[ M5N5J+9;F"R^''J(9D*&R-\<>/<=$*;C+'A=>EV,8#S^B>]:,,D/^+S+ZA"F; M.#E""=-3/QC$1]?6:NJX&15<4^K5T*G@2SVUIJ1"]G5T>+"W?72X_^EH9Q1] MVMM_GGPZ.MI1GXZ2[:.#_C#:/GB>" L87W%Z>?*V__+#N_.3B[,W?YR\NK@< MO'Y]?/;V[>'>WOR>Z:-UXJ5M. 6@4MFE7JA_V'5(UQ5E_"?Q)@3 MV/'5%L=U(::RO NM@F8M*#_TIIBO]2) M^ZHK.6B[Q@$MY^.]O>??]K>B7;VHF&TV]\9+F[SX^-_OCPYOS@Y_G!^>OG/3WL'NT<[ MVP_*"=BR!^[+_\?[Z;@7> -\-$?GB\9VC,4NIN[D'"$S;WVNNPNAL/S&38_/ M*.7=5:,7/$/)V=G^]?22_M'_]6=.ZWJO N[0N(RF'(J-RX;2PU2680DPI!3, MJV(C0T'Q@,:4$U P3SH11P#B+P[P2HG^=T;+17UQ?0_6]0DC<.3^< M1)(EEG'B8ZEFUX%L[3-DBT9]&>(/H@8LK+!CYFW!C'3+Q,@2UEYQ:IW)16VO MO5IAEMJB&!CXY][133;9ZB-=XLG57'EQS84MA/IRZH:XJNY?#:7GL@Q'#K,V M&I%<%#![8\:NZ?(F_UTB6^_(.'.L(2 =,>VQ(G-)%R?5)5(=2O9;4,9P9LHK!5MT^_<]H#(T@HEVJ*G&S=YRO409,:;C]WG M-4PT% A[,Q*T. .GZBVD0VDT.^(&\Z'E$[8].)FPE;5T&7>( M:R5'1#K$JR B->7:0__>^HMSHN1^< !P$=VJ[*P%!,^^20])FA\T&*#*>E M0J<_LA&2>Z[!<-6%Q#>KP;Q*#0.;*;>VDC&5TY\O.J2<9:/ MB2#,IR>PC/NA.9#B2+,()VY=^T9$OG(%DE47$5(>:%.PHRA>GR*OR[2_1J ' M^B*AWW!"\,5T F711J%\]6*H59>64U(7DBP5FAO'FY!$QT80OG:>1ZLN"(,& M?LU=5*.:2%N\.)ZQ1IH95DUL!.)KYWN\Z@+Q3BBNTLIPE#+9HU,/X_"V5K^B MG&RDHGO2,:!^KUF??"^QN/<(3Z9()#]*,P3?(&:I0GONF%O0F,P,U! MO#N]N.2\RF"*G*)1'GPD,IJ/1(/@Y]MG%3@&3 BYF#X2$V" M#*M]7<#4AO:UIBJJ&-Z-PJ:'(#PL6$")*16EKJ29@3M-FL0/$PY3IEEJY/ M8_(-(R$FI"I" UJN>3! =/:I@S3*;4:D(?'S3.C>9U]XCQBCQ%?F[= M'XM[_1@B28?!VFF3@*4C1'1& &.W1);YD;"BU02(53Y&6*:_]9F2-YU%]LX< MY'/9MR.?+5/[9EC8+^S+1$O(47XI-9S0^(6AF5L!Y@Z_?Z=B6+(V[6Y$[ER1 MF"K1XR+'E/,C1@>C$CDW-E'9S$KO4W2T:MHL&<4?> M';7T=S,W;GW'5B?.Y2^D._O8\DXXWV9>7 P7"'$Z.7?RI8/1GBQ%QJ5$YD9@ M$-8!DO)B?[X25&B&AJMBK$W7V@K="!'?<\2%S=#"(&SL$D^)];YJ,=XRT31; M[Z !T]BS>[H/URD6I9D/R,3%&L\XFME:-.=P1])I)BL2MHR0X@-.OGN*;0#B M*GBF>N->J%-5&&/2V2M]A[;1.G?>A1V)O*BENDO,!.I)S=UUJ@E5:!&W!;5, M 1-B BQ<*D EE$&" Q"6U9_^YG86@"!%V[)$6;QSN]LBP8.SY,D] M?YDE.34SOVN"2 M-%>L$F;M+O"Y,ZT8"4AI"CNW_$TYPJ!9X:NE$+:X!6N:]H/==1O/C&P,DSE6 MS"DS),,%U^&[JX#>NM^!!M(AKI$\#+*09/-.K(B:M1#2M)>;/="1#4C%!:B'*, M;T"S3L*_6 31[\K!A<]$F!B(YVJXM&UZ:2@-&I1;7*G>5U(!1VC2H121[^KE8AD^.*9C= *K_5U MI9E*VOYDTICZG5[MHE>=S"Z:G4EP,6G,)A>- MF=\):JU:,VAUU]+VZZ=G)Z?#L_/1<'S1:#:ZC4,]3FG]0/UQE>.84_WA]3=[ MDH6Z>Q5] 5#AE/NP@VK^-&O?_QZ6^$\0NS"W6ZDZ*5F^ G5O([)YD8430=Z 17R.&@\>-"E"_0RTU3N:0LF MUP1EF4@Z-\8JR?WS%?=3<0>]JYHK^$%N M9,'?^$S6%__4HEYRN7ES\C*@<),^V80W1L].X.HO+"1;>.TQ6%'H!U-+*;F) M;K5:Q?\468.J,PN^+#&>+?BG]4V/"PP!W3J!?<5"I18]JUA=S&BM< 6Q%9PP M/.&FQ%Q2JR<3VV2TC6!V$%D@NZJ[S<*(Y0,QLI?-2M9X&Z&X\'- M>K%34%,@:@GWS>)]>>ZD=Y1\W3P$&1SK#/*K&6/%^?DNWU?P(NRYXRT6H?>4 MF9'MUD-=A?R>>F.^AA=]E>KBLLDL7"QEM&4"R*<6[,K>]J)\!UA2F52/:J-4 M>5\CVA]E@+E^"# ? LS[&V"&U\ "NLV< '<+MS)G#B@IB7$H\0JC:Q][7]PX MF.*SU(V_Z+I'C*:_4OKW<[1ZL)R/PB_52J?!"O@+J9$/P,2B'+=M0IRX#W6> MYE;0@M')^.Z@V'08%$F%M1*)8SX#65I]VGK\*UOC&5-"TM.4GQ^-V%P7=$") M6C7?HC&JS$<@NC<)_DA\3JHO)RE^$F6TQEB&2S0X/WO19^K*FB7HQXKQ6G%Z MY23^HLJC^1?TL=7Q@C =.*N.$ALLQ WGN?1\950_G<*%:16+ /,QX:*^D-8V MNJ?I0L53.+>- RH138#QT7&?X'N$^/4U+T"%X&E?IX%NFL$PT$_W+DVGV?*F M )#9E;S=Q*&E,W11K3S91.?42SZYY@:>Q9[OYFZ8NX:>S*CO[S/VKMZN\@')ITCS */I6,!#282:VEGS\-.(>O(/(3"LB) M _WFCDE\?W=H!W?0R705BR^EKFF2_<+++)E>D>J#>LJS>J77U&9\_I;4*UU6 M@:CM"0?@2[Q#\*5]!2I,S[EW,DU3M)1;LBKWB_1#(Y%$N?*2J<:.JZO \R7? M"J1., ^22VKT9A4PL:$C$DFY?94/!F]Q&J,;*@Z-;^ON\R7VA"YV#T&I9L&' MV--6UW(('!P(] D[GY: Y]D"1RUR:PRGGF!$4&"9<>O:O\Y&1 M[J:P#WN.M5MGB1C6TB(,?=T3Y3)"_&B@XP"!66#^P9&?$.XLVHA'B#B+>9QL M)'*4"TM5$@*FHC%MOHBY*?J*T)?XBW=*H^7G$3:*,T(B4 -,=S><:6'2IK>8 M**T>!M;8VUQQ9O XFY?*L&0-VS,<#1'LDT_I5;RT/+RZ,*DX=IW!OV7H-2Z&Q*<8=Y$;Y>%=<0Q&]*/8F4+FY8O:CKDK&% M3??P,[*.R>V,!K$:2 /P&14)Z+YAJG)4\%,;%9[36G-#.]=!Y ?*9B]QX-%+ M$39=BQV5=:4B">('M+?@:6A?W\EV*O4ML7:^!S\+N]5, MT/CRC!>/W?D8GP-SC!URM78N&(@6(G,J9$)6S/ 6#EUQ1JM"8'\[>ZU7CQ!H M\P>SV9]0]]VEP\;:G91=SI9+3/W4VWQM-=#!2^4M@ KTO:K5!%QUQ4^H5&18 M5[WBG&9)FDE% 9DY-)#(-LPT]2DLGR)JO5^F3 D8:2+^ CSA%?>;++O#J[)E MP0BUDER3O$8E,]C,2]Y[<$'UHNN/D2,4UUC.&W9A!U6WWK2;KO]6_68]S)[7;ZA&B!J<[Z&BLR?<87?+F#JF/X!9_$UM$>XI MH _W_0M2)LJ=1G4M2P;>D6&R?4:5Y9K8+9G7KC37'4FO,:?]- RH6>=K6'WH M>[IV,N^(6A?&1763= X9!,< ML@GV.IL C;+^_X*0!UYF/,6V[=5T:]5R&0_<99PM,#? <"JI4A+$#)U,P+K@ M.%BN*)E1QW9:C(FA9B#,RWY]VVUM?OT@QE9'8U1(,.MZITF0 K=_K.U^COMT M>#;@#2D*D_5C+A$FKX%9D?[U!VA8PD:;CI%FAGA!* #=O3P7 MLI \4Y8]+';H,/O9)4Q9DT9-Z6)6NMJ"X5I65\!-CN@?!T1W,[.SX6"['\I! MQU/IZ7?6;EG9Z<-!(>C5)SAWE%>>'^]^ZK?H'"HR5R.MH_>0K6 #[KF$]&K757Y3]!5! =W%J=>$H)Q M^I)+T%]Z?WD6-W,=WO%'V0_N;?2IUVVVZ[V>:N,F7W2J3;]3[\PNFJUZ_:+9 M[#8N)JUFZ\+OU;SNM#EMMIK3M5+4QKOAF_Z[T[.3P7#X:G3\9GS1[#2JO4-% MZMHEI8K4QN.J2*7#=:S3?<#"U#TV]G/SI(>Q\(>S+0K&6_%;1,+\C80?_FOM M:Q;1:1R%>3[_%V8[18P$ <_=_Y)9$?N*-BT_EHYI#D>1=Q-GJ]]FX9? +UN! M950IEL/GEVX:Q_)>W,(=PCN9ZKH26&K+#C^^(;C'0+)?DV#J M4<8LYHAK(%*.6CX8K"UY+[I;N$:U.ILIJB&G!1W6/G&1D8Z:@.92Z[H.;CRG M@KU[-] =[N!3T]^._.;D45]@T^]0SB29>HL59D!/(R^<.]XE1MZP\1Q819?L M_P>#^+@RK@PJ3O\R XUF7.E7'#]P!I4_*OI=H%'EV@4.P/1&7D2OY*D-8DDL M"V:N\P$'43\>?#RROM3C/*=8 ;X4ZY>,JH43.*V,UB?(%S'J!1. @_AY'S/YE_28;+>?A7 MYBV\-2V/\NS>F[U\[ZW(5'F.(\G7N$! M+2X12DOD>]*1FH&8[!<3IEHBE;;O/;J6#;9-5;"1 M2V$P-)4@2"_CW BCS-,_Y3* @0*3ZO4JO=ZO!-:6-VRK/,T9R,SXFO'A'))3 M'-SSG-=H8GN*=C6@TN0&AW8WD#C,AQM)PJN?AR^<>2PU!\P<8*9X+(@.E$S" M56)UT'D>PN-IEF*C<1-XYQ'UV:1":"&' M\OE>PAG@41.QR#&#T,'N<'F1(VR-UZZZE2?<'Y.[%&*C= F[+IP/RR7QJRRY M5U2GO;Z.XW;,PHDC[/*9;)9S3(Z?>Z\S3YI*: MQ]/F:V:.0'L3=;QE.D6QV#H0["[^FZ'=35P8;]=SQIC.(@_!)N&*1M3P=14@ M!Y"T'J9/K(O!/.I8H6'-,:](861BM9FY#2J-)0J :\&XUPH#R\A?>#]NH$62 MU.R6;A@%V+T;:^P0N-A\H?M5D:3QO3GV4730B?99Q?,])XV/1**9EF?DN:"" M(6!5#%E-;&@)\^%OJ0PCM^LN,V(Y63\D:$D%XXW_-K.!G^#\)00BSJ$G9=N8CK9^>$:9K1Q21> MSN5JH:I,"U>_$5]7?%,.K>Q"B1JOZ16)8O*75,XPH(*^;IXSB4WU DCJC,GW M_;^.G]70(4SQY>_=I$*HI"-/> %Q0C((3J9"*C:>$H8T7+I8ZE$*5Z79?,Y8(G&121G1>[A8F(&1ZHWV MEDM/@D0E>TZ=3R23IW#:>*VVT*0&4*6C"1#2<(K$2=2]L'A?G-B]8G3L,0DN MPY2U524XN/^(%EO"*G]7EP;&72,);JT*:[-I@W$=C#(&NT$#^AJ 1I%7B,$7 MZAS PNDF1U1*,&H)9S IZ15S,HH>WA%.YKUQ2SW>I)#F(2GDD!3RC4DA!T_L M77MB)WOEB:4 )V@520PV[G6:A:N#U_4.]&].+<'R!=' <9_%%%ZH#C)N%H:LBF.7\CL.(0+ROM .'@3NF*Z7?:R^D]GK>^J1Q MS%JJPP9%19L&,P[3ZS,"F[Z*P21)L0-;^5& )I9S9NG?@W;&]03JK.20;IV.*_Y"55[@(W1[ MB"(!'OI+^JML-_0N,X]>"K2MM$MXG)IR\)[H!XR_Y&>G&-P(V 1MBQF&0$4L MJ>5HL3D$-L?#&@8*4\!DC)O$PR._Y*,&8^02?DD>85A9M_H[UHBP1.L79XQH8LL-,[1"/T!5-MU_PG'FED#'9NB+^21[! ML,!.*+^M_*?4N!).'XW%1/D\/'\W"*;OW-4SJ0E9"5ZEQ#[DT"T+#W M&P?1?4&-:1HO\5U(:+,D.+@Q:68:=Y4DCLK# MN:;PVR+\*L91.")CX2R7Z'&<40LGZN>E3 HZ%C^8AMSNUY"EUD1V?3O7D%LE MGV,N,QW$&%4CU_L@3*996*;@>M(?-Y7O@&#Z-&<-U0]CS4+J D9,T!?,;:VA M\0JI6=+-#MJ3SL-AD[#)M^FOS+_D9M_H3$4(7 R,2R= M (A!WH"^=HY M>@CZLQ$UUQ1# =8T5?YN?0JJB0^[E:DI%3W[I3 MR;+N-3O5QF0ZNZA-:O6+IE=M7WA=?W+1;,^FOC>=!:W9>I9U\_WH>#CNOQZ> M__EJ-!Z\.QE_.!M>-!HPF$KB/F1:YS.MFX\KTQH/V.$3=LP1TQ*V_>QI=@HZ M!L8B3CA8Z?[?^;;7]&OMQO2B5I\&%\WII'O1:WCUBW9UVFZWIO!-B=J!1G!7[84:C?:LP,KRR];Y_]H_A^>N3L[/AF]'X M_*Q_?#X>G+Q_?W(\_.>'T?F?9\-W!YY9RC-;CXQGTD$[<-*..6K)MQ@[?.0. MG[D+3[SKGP]?.>/SD\$_WIZ\>S4\<][WS\^'9V/G5C;;/W[EC,;C#_";TP]G M@[?]\7#LG+R6P9WQ4_Z\_=2\!"W@D?$V[1LO MN;_:^D'DI2FSU#ZE6B ,^2J>?B+\JS"U.@,=]\>O^O]TWD3Q!(O:"0C(D;VD MW.;$0^N>\Z,I5?)F#CONZ&3\P8E$C)Y@8?MQ3/N#IMJ43H89BO'M\$ M[ QDRX6RP9[@WI\4P, :*LIJ864U./^]092D+]#/"CHZ3#3JOUC6)4W6/9WT/R=G#_D.@R2( M9Q7@/SJYFS2'6JWB#/\%8O!\],<01>_I\'C?GJ+#4%(>@8 MU-DT=ET5(@U5FVZG4]W&,PF4F;4FK1)I!4I/9[20H!9EZXSIE\,O(,87EP$# M#JE!^4TT*RG1#J35"DZ;7G<51)0C[SE3V)?8#ZDH@U+/R86M7NP)&*W^(4J. ME10JPNEB^,5752+DU@X6Z'F/X%G?-?Y/6T6D<")V.9>BC96,KP2!(@/L39,% M2J+88SP-;_7NMLE;^!^@N*=ID/3I4N403"WEZ\KSG4ZU30E.J!+!HPGB%/AE M-W&OI/U]$]$KN\IR#.7FV::@6V MI("KV@ABV20#R\4=;-QFP]5)0PSHP]7EOL%\ &@"F_%!A-1ZW9;5W7.M5O%& M6K\X4R^]LGYZC?%//Z#2X&PI\@DTDP57<9O@'(9Y0\Y!I"%F47R-?=*D^%HJ M$"5'#G%^J1HU*6&7+!&>@!GWF&: 99 WC.= M[3%NS3O6E28!'(E+MB$US!-0-A4\CSQ,+K[&5)44RX 1:QW[V4EN,Q95DZ9D M$8=27)3>H@Q@ FQ?I2N/P^9&EX^/[2L*,'@.:,:("8/*_)2-@+S1 M5#4Q [&8UHW25:+>*J/5I)QB4ZR"[5ME]+4J/;# K,TH^/LM\\,:'ROL\3:K M+5%_'V'$XSS!070KU=[A(/;@( Z<:3_.X<"9]N0@#ISI;@^" MDB6VYM=\GS.U@)JTL/L!+K-I+W MS([G-W)Y%KGCM1>R3 +2S^ 9IUJI=EMW+-(?^GP/='V@ZW*Z?@1*N102WK&H M>1+W[UX7:2%X_%C#^Q%=KP.-'FATWVGT<=H?Y]07X&!__!1ZVAU?RY]"6>L= MC) #VR.0/0<:/]#XGM'X3V,) MW3^Y']3)_+KSEZ,!E\./,TP4?I";_T.=W@^^U#MG!(WVX6(<+L;A8JQ?C&:Y M@'P"_:!W3^=0=<54WIW$$=>VG%")T[MP'G);M=3ISV8!@UR.J6?0ZL9YTK6H M!([#D"F(O()(DA: /7YZB9F3"\*OC:@;AHM51PE!KB">RZ7TRDM5![.!=S/' MZN\T\JA^C5!=L%((OL6'5W8Y+19*<<C4P0>&PS/SONC8^?E\'CX>C08]=_)]PY"E;WO'_?? M#-\/C\_ISVW09PIPM;]89'"1S@(D_(=OY_4-((O^)/#;0=N_\!O=YD5SUII= M3*I>XZ([;?8F?G?2[OC=7_Z[ *S:'@_?#0>P.:]'Q_UCW,=7_?/^1;/5K=<: M\O0!)3"/$MA^7"B!_]_9<#P\^V/XZO^_'W"^1P"!L9=JU'=/ZK&A.K4/J$X' M5*=26KT%UO#\*P5!AV'IM<7+- M@9.RJ(XG=,8)Z?#,P("O"=LW$<@?K=M MWP*1"5:PF(_@W4.:\%N M(B>#HY=_C!BF!!.$83!$($$AYRS!3%V)\8I]PPFN+8$1?RNQ9ET;Q,W5J)@O MT4Q/KYP_0IR_-GWI86[(1T@TS"X#AII=72E S:67,#0;_'L2+J@MLU[PU ,V MB"X@6502K#QL\01OGF31)QCNTH++R:W:(T^"0B%5X*KX&2&[('3+7EGGCQ0P M!525V@$PQ=*('A"6H-,Y',0>' 3H^[T#0L0^G 1[A(/;@(/!*M \GL0G,3A2NS'01P4IWTYB<.5V).#.%R)'XBMI4%V:K7;4';, M2O@A^_#H!+WZ$/OP>XK?A=/\YT(?ZQ3\EZ.>#/JVO MMA0"^IFXW@\^[T?.TP824[.0!]-LN:YE=2B?8FV *%P$.N<"%2(5;R_F,\28 M'?^\]@)D2[8\T-;.'J''3%MW+SU^ZA,_2(_#>3^R\WYHZ?&-^O<#5QKF\VCN M3*]^Z&7=^<5X](@M=UHBB\SPH8_X 6ID1<5^]+30JS1^-FJX!^WW)^34/_?! M_32\N_.SW=:'X=T_!2WT*KWO!;VY-3/V!YRXY&8_&L?M#]4F'QG)U>^:_3P! M7K,U@6HO3[G6K'0/!WVWF7+[SDA__B,Z<-S#*>_K*9=RW,?I1BROM#NX$WRA\I")[DN1XDQH%6#K2R@\1X M!$[0AX#Y?O3.TI\-E;=6/1CWWY_9^OCIH-XLB>0<*&'?_*WKE5YJV %,>I*$ M,,S;(/HZ^-W? M["^^=<(XTE?#>M+[\_>%\IZW8FAN%)=?.5O^"\?9BN(Z6C@P?,3(^C/GTHLB M_.#'!Y;HZP48&/_1[2T ^]Y,8Y'9X-7,=SD+:E MC<%5N#1M%L*%<^;-@QMGN/@<)K'J"H%OBT+LS^ ZH\6T@D,,D%-X?LP@C# 5 M:NK $),!(RK./1@8_I,*%"5^=NVEJX#_7"6!M\(W.#-OBH<0RN\$P3]U5L'T M:H&WP4D1S',:4-.%:11R!PA>,-Q;VI*S>/KIQGF/")3P3AIHB"]+%LYI1+,X M"RX5":K95VA+'&\J70;.A@/C5ZYEG-K56[ M\&?5Q8X02S[UZ,85",K"\>.G'CZ812O=16K$Y] MX@+264#D=(I@G,Y#M5HX '26C'] $#D =/ZL!W$ U=F7DSC@3.W)01P .O?E M) Y78E\.X@#0N2\G<;@2^W$0!\5I7T[B<"7VY" .5^( T+G1]W0 Z#P =!X M.@\ G0> S@/DU@%B[=[.^Y'SM(>&6#O0U@&@\W#B!^EQ.._'>-X/+3T>9V7] MAT6(Z2SC%>8^'0KJ?UIL5C51RU/A@@^#*-8(;P1P3W;P$SG"7QG,OO\J^XQ/P; M*I:CV27Q%+275/Z$O_Z(U7LOO1O' T9 E]@^ =P7V%BUC.#+DHK=@!'\ MC[?(O$2\??5JK0NG2*56,)UIEJ:&@YA"+TPQN001!GN&15T+(( LD(5CW9Y, M'102/"WX*?PU3W6QFLRBXIP S>3HQ'!$'!9(02K"X8#]AAA>1T\"@OS^&S@Y?,@F>*?,+%% M,.5)7H>P(&"F]OG+ZGPZ"#EFG+]YY+8EY&8M5#K)HD]FYKBG'_L#WD%-'ND- M\//YVN5C&H5YXUN^E8!D%^A,Z,O\YH&RA8I!0%_ER1ZG=Y\UB?O+.?&POHFE M7.-Y@,T#9!W!9J?3J\#/(B A( 6^RG23L\AK6;4NL7 K-]"RE*91 MX"5HXEX5#(L&GM"/R';<&(FI-XW)*F8KNB?R&8W_STYFGK4JL?CJ9%-< M".K-X,6_>=&U=Y/**CN]2L.81VI2N UPERN-UJ^.]6]C]UG3P9)4:\=R5:GR MLWQAJOKPEH14R[ZKURKMO'':4.?$$4FUIBK>5+,?[[]WH-7\5I?MX/VP,%O82Z5_N9A'=:Q757?6%0Z" MRH.H;%8Y/UUN8$XL:O\W\Y!?.U@('\Y"HW_8 TIQO>--L>H>K2;F1ZB%TGS2 M%3Q!>NF,\!"B &Q5)Y[ TI3)1183U:U?Q2A]S7=8PRXE[*7O3I6B FQ\$:_P MS?I]^#1Q*-9 9#/6F!HQJ9SJY#%#3N(;+X+E)X$ $ICMM2=A]%32H\.%V)1^ MEBAM7%09-6O%EVF!I&!NY_]I$'RBXT%/^F^'[X?$Y:B^USN]CY]5H//@P'H].CIW^\2OX M3__=G^/1V#EY[;P>'?>/!Z/^.V=P.1N./[P[IT=.3H=G??QB[-"( MM=^=][B"D,$^P%+"Y<$M&7Y9@OH0XNDS-L> B!:.8HI:@/KQW\,2AABNX"I/ MC=W\D?;HC(_G'1_/W_\6_O=/Z&;8W:> ^H_N%O(4'0J#CT>R?D$#"4HMY]5U M_%56'VN6'T.X<''"G^D[_#("IOLVC*)4?0&\S7*8'2,;R%Q:Y"GKOBABM._" M [Z(L#CA IA!A)JX#5Z"#2,T-DS11>I8RR7;CG1I:YE7 :Q+3$!EZFF/P3BX M!@YXB? _R3(V,L8B(N;$6?V MFK913"OZW^<@,*.,= W4*0*4K"].,JP)YE6-)OM#JG!KMMI?\<9.EQ*?CSQ(E1DK;F>E^\[KXDOT;-ZN](S M0%2YP(-M%M<;>Z9U'#GO1O_\,(+G_J2G!OW3T3G\%IX^^7 V&.(3MR@5YB3? MA: L@Y)R\]-K$XP29YFF6\,5V.4!P=/Z3&YX#T]CV#V%LS:4J-Y=:QX[ -V9 M):#*/E4S]OJ#K]=F+,E'HQ0Y1J&MN">0:KI1$7P0,S9=/ M?Z>/GX?A"[XFJ%&@*88X;F"SL&!=T-CH]B0+2)D!L 79S$.+".>)5EP"?Z7W M)K&*.WC.;(DK/_E&XYPQY9BMI1 #BZC:IYCT1 *?Q0$Q;U1;V)MG;3XL;1HN MD4&SU85\#+X/EE9,,9=)A6_MSP.TU93QFI)0B&&_/@4Z@LSG 8>0S9>6,>H1 MW"&;P &H-CBPYNNSW%&&WL0&"T16%L4IFJ>\<#9/5AM_PV_!K5'"[?;=4IIC MV=P4Z> S*'?!JM&:C/D-[2IL3^RSE8KTXT4"Y)>*O>R'L U)P6SFP!&*C8U[ M^*"DYZ&B.-6D%]]VG\/%YSA"U<(L!_$5BQ1!UPX,3S@FT6C+1M5CB*Y+07(@ MNTDP];(T^.UKH??N)E&EO5.B2LE.[YB[\EU3O8LEGQME%X5]WL--A,9*SRL,O#SX*<)Y+N=9I-_B(P3F20>.'^RGQ&HEP$&-]% M/%4,(S(Q$N%=P7S@QF:@QR649\%*%;T;!T^S%%FH: [\$KC7ZBF,=E^!] I( M.FW.IMG3Q*L#/?\ >F87I78D;Y2BP'R-Y +>R8$YP:9E&8/,V438+?K?DKA5 M'IFIR89PU.*>C/2MUL ;&W9W9'3 /BD!:!?LN3_!!M]JM7;U4ZG MTZO^PN&A^YFSWL!$.0!2"5U0+LLTYF0,3 506,DFW^>SA"AF'MC^J)UKU6J# M$J:^71O*T]\I!;$=7UBC,!9!DS[R 08B-3]\/T"-&L,3 ?E7J3[CP M [A.(<:WT@#,>)C]+"";'CT5H/T!S_DW39R]AW E27D$1H\W-DS85%\LV+> M2LDR9K69,TMFELKD.:LDO+P,2&4DCT3%IF%9'.GHS #P4STO5*5P"F92ZCS" MQ$*4MG(X/FN\I_06U4SK*5)C(YS"X1LAF4F(E))-?+T6E K;.)%L@ M3E-:@[4IF#AJCE$V"+V_7K)2"J2E,TLRU4Q$Z"Q&%P:&"1-T5R@(Z!E8 3!A M1H)^[RV\2]+<'V0"'!(!-C?1("B$:@8&O+UW-W-%B&#P9L+;_$!9)ET MP[,$5A*DKJ2\6:E_=N"0^QY0(IQ"A'_./P@YL)"$F':'OS*>0>1<)X,C'N>% MJ_H?B#6?=^3H4<-*4'&=?I $7UZX>2'!,G'J)0EYM;6H(QZ47SC&E(%SHRDO MCH!R68@N*^719X$;\KYL[R3@,N/&U(7"AA,7UC,NDRU)6=-#K/V6I5Y@#JAJ!GV[0)/(/NR2E#3%%(&B0$)0& M<'_M (JWX76S';?>:\KJ\"(#V P:"6R#*RZ[!7P3L6QDY?::B4 1=D$PX2-/ MX3+^F"N(+GDZBEE&GD'QAOSXNWF'5S.70(43RZE!=W)QZ[EEX4MU)KJF64T8P8_4:OJ#1^]7!T,_J)M=1BCHL410#9P>[$2>4X7D%1'05 M1YBN243PK&,ESIC:%*OK55XKP$G2V*5Z!%X^#*SD=350RCHPRTU[L.=.HON9 MV2OC#5=L$HD9?)U\[RN<)1(%F4^A)EP?JD@6V/2 M^.J4(U-K3/APR%2DFJ]^PG9P,[9Y)-DC58%-9H7=7LD3EPFJW3#0##5RY:+! M77:XZ,2^8:HXI5[EU)M".F_J12RS8I#,0&RK>$[U>%=8IT2OI5JY%"XRG&6F ML@55FAP:@?(CMWP=*CW'>A*DM9_/,::T8.!(E"H 1 -[%JH8+$Z,TM)A6_]M MFI>AKTYW:MZL<($"!;.%Y\9C9EP^O8.85;;D MF#_R(9C&7ZJP3UE$VWB3)B_1*TSVNB1YV0-2I 8%*67$)2N7=RU/IW/O+WBO MWO-K2@G8N)/6=L&@Q S)&;VB#<$\6M_Q+B^3X!+U/S:[UY(PD20*^@S:_FI? MK"70?HF7>^>MT8Q_$Q\OE\-5BZVCY)%\-[W#Q) NL]#GPL=E-HE(1>0^E'/0 M=&,?)TQ)+0Z[X*08!!D=_KJ._ROB@64=+!MSC/6O[5Z,)72&SQBH$L*)4,2R5Q6VK"J8FW)<7[A_N+](E]FH%%1I)BI05ERYUB01AL\R\BKG%)'#HJPE:65B^K,MN M?(FU*-_=&BNP,VG#%4E&W5QV?;95:=1JM"K*:E*,@X6Y(GO1#&R!,J%AE0&% M%32\1HZ)L=BS%S$)\-[39M+0UT&.S1=5 *,@EFTJ;^ UQ="T1EO*:&P>?JVR M[,1F58*:3ED< #^<,U:EGI4L:L^G>@P8V*ZH6J#HH\PHE]":H$6*;8%A!A!).ZS_%VV0NK]%9RCB>"8S$ MBZ/+F!U:WJ?2#5$_IJ11FE%K]]PF5>M1!FA[AP#M(4#[> *TB'%3 M-%*TM;Y5_R2&P$H_:C8[2JW_R4 K;U1)8M7V3Y&_4WM?#O5^GMULZ M/TBY9W53L:/+C$SBTGI4DZ0Y54ZOOU9TIJ?BFPQJ.+*31'.Y)T5_VF0JJ'-MMRJJO9'K7T_ OY>*U\0\VK MV5HS#-J>TY9MS-4OUIG2D>5;]V3#)==201Z];=L/SA$IY;$..<>3=R*XU&T3V5/^'#,=R>YO[.U#'^D,SVQ[!)1>WV8R#)R1MSU BIIE@!6LS5 MOKX">8B)TY*Q@(8Q%>-PK60N=R%<^.07+-$137Z;E?(W)_LUB,-4 M?IR>6QB!5ZT&D!P^DK,$[P.?LPJE?H\9#>C*<:G"*C>4N$/4D-8*=]I!_0;, M( 6#>FF5@J*?@S #K,U$C7+]G%<(]N->"E"DBI^$K+)1I()2BYE"?!ZAJCDF6;A&,:IOU@ M9: G"S8CZCU7(J!XY=X'7\)I3"INZ(=>-K M2XT'%XV%M@[(4O05 4TC@,^R6!30!5!*%%F@8Z'9 ?^X6*6>#:8&_.L5_C,(%:6,LHJ+ZZ/.0R?/X''M;W5C**TLQ/8[!+U(@ZD>,.>'+E4N5+Y[S3:3@G?A^ M;&$#NP[%"\$$53G[E*>([G[[SE,EV_TB=AM1E]/I["X>,_I_\+B=*5$*?X$? M6A'-O\EF;T#%4&UH2$7DPC0TR@VL8;A89BMEN+&OD&(TJ-]@),1791Y682+Z M7@R2_@OBL,C;E9]5L5&&Z6I. EF;@\["1(-;@15S? 0(MTQGDL-&X<*4X.K>(_JWJ>I4,:L PY*6YV[(B^!9.X$HYSD9R5LVU MXGP0R@C3'&E80BSW$D/:G(;FD [(E:1$)J)0:75 ';(LWC@[B%9XSJPR:@*4 MVX^C\S>!ERQ85R-?A@96X^#3W2@R3*UX!.ZOJ($LG2$HJ1^PIG.BEWDF-\%HTS;$#6D">)^MUV+BD$%=7<8AZSIT74,V3_@R ^%CB$R M,HMW3+V&$R74%NI]I76I.#D!F\(1F$X3CH[&\IR -! U%:F3]Q:O M- 4T;C00B6)#6D*!9KYDRLDA1?"^:M15/F:K5P=N.-9:Z0%=VS.IW,2\@I([ MD.,XF#M/?TINB:0H_"609C1_O",,D ;?N@)T*P%?_/UC#)LVJH>PZ2%L^GC" MIM:=%$\0IB.#)>[Y^&.-H[61@RE&$">W<#FZTHKYN 2 J'Q/9!JS +'D0&+I M=#J#226.2'*O,MU0E!-("-#<$;'?@,&V5&V/69RM*5+X(=,8BNR/N;$6(GZ2 M@@S181<[<&-YS.B-'OWX/I5@DHH8/#)3,OE< H8F?3U,:<*NR&]T'A:UA(NK M@$Y" P&M*/[UDD&I*&^&"F@L"<4Z0ZI YXQ@<:SH_6WS295<8FW%,SA#7[4< MD/:"9,2J'FDK/"\U9"%,E :*D*= A63^DQ[L1=3; 0-(7SL)PL]$;>HHKTTI M%4%B@V68@G2G@XWJ\2\ EB16\"' M/X2*;@7_/#/[>*+W\6DBC)_GZM4LZ%O.D."T %,%70:6E5ZI]&I@(;[(B[^ MO><%AI?Y(?L9=@&4S'F+%S&+2:E^9?_(J9>(S34:2?T4@?-V*Q;<[OB\?TXH MO6-"TAU_.#U]1W_WS_YT7O7/^Z[V"/?X%U;\[C;TZ1?^NA[H#M5L/&*WZ*4_(TN ?YK[6LV2.B.8<$J MQMLX\=BWN)UI;<&!J%/.FX+S^AQ$\1(OX@-OT A#(K6JRYG4EU+]O\R2- NI M1HP=W,A:CJE^G]NTV!&U@ (./1]:7*H3F:K=N M2<3NN#*NH'?],O-<9XR#^8$SJ/QA!CTVC09<=N9)@EHN:">;;\)VJ&4$"^* M&M/ UKU<*Q1'>J*J&\?V>4EZ%7(T6/6>*^NV\#4-(\3E8W6!6,14:+$HQB)= MM4UK/%RUXDOMD%^N-8*.Z^4;6')@[UY%(E.6A^$>!TW6TEST'G-BE9HBN0^2ZR'5,;GPN+M;?%S\FXM HKEB@)?< M .4BM;H@!>CQQ^G8K9"P0TK\F5,=@3):;FYN8#1PR99R=BNX$G&M2DB;/+F) MME6$ H#1L/*4K,)LGEO50'^LEY9#_0+J! :5!?^&2^:'L=.?3T+T2#KO__,_ MZHW&[WAE-W P_E7?XH<6"\2QQQ^&_R\B,@(WD+Q6'FE<8=YYG#'GQ<].*Z,2 M'LD/Z)G#\/-PI=+JR_<"][D/ZXMPD]NJY1GG6< ']JYS;%6GLIJM0ANX(+?7<(WLHG(U.PCQ'YDW%N'$E2HV$VR14W,\%!9\,0OXP X)R,&HD^?2LV":\21R2"FZ:0_7LOMG_(DD M!:&K8,580I1Y2WP<^R;@@YQZI?%;\(T1VT J+J@G("ERZ*; '5)92;F,+?4P M5>NG=I/# [@4P^]W2=7H<'$H1&Q8N$[O5ZE_:O&6V8T&ZS1\\\(Z.%U,$D$E:;6 M)<5-Y\JLD)C1Q MU1[U?A7 M!A?%FMWX]%S-C_VA]JX888LD1[KH6N[-S)J!:N7I?97"_'QCQML+5>QBMT7+ MECB3;=HZAC&N@3M20?MOUL4N&:VU>1CF:+GTN]M4;WRU[+&[?K8J- L(1;5 M$ZI(-)HJR$F/ *029S+:HM[C(JI,HR.5]NG*XQ(!G>)9S('()5RN\OL$ZJ M:"Q\];4IQ>+7N7F#<,,$KXV3FB!^5 :.>'/@NI?L#&[GHPRTUPZ!]D.@?7\# M[1Q;E[I'#'/-.:U'=^'E%O.6M=/EL*H$\$P>#\I5XGPU9H@QAAKC:^)'5O6& M2;L&=A3.9G;#E\)CP13K?@9PJ=0*BOQG1BC MHH8%JMRN=6Z#8MK L4BN5.X-8E,?(F#E=0C=$8E[$+3]H1>&)IF_!KNL?%I$5]'@7^I%%1I MVTG&;KPXLFM==(^SN>=313NNHR2#PM+?I7Y?D&3#^00,8%8 Q+\GU;]!:5=W M=EE8O>77-]A*,HV\:RN/C\U!4& C@92_@]7@C(T#A[4'VC0F!]'BZE53%.UC M,]3\]:< /M#I4M=P,)%49 (A0Z_"N!Q6\C#T%/._IY$7SF$6,\21]9Q9X!-! M^B%FFU,<'U2Z;3JM*SE-$4*Z!LH7BU?;J&&E6TJ8 [QT3Z=$-=2VF(DE6UBYR 378[/SN8)3R0D.[' L M]:M^/,WFW/,6-J"8!?H))FD:QGJ1-+9![PGVT(N44EYP M13&].52^0"5'.(YKGR%.C/_-LP.V,@LCQ35N)PH#;1DPRD%"!.U::ZIW;;YN MW3D"-K[M%?G."L+JR$V\?F\1HL^14PRHRD\"R;^7;:<;+@4R5*I/#X%M M3K4RIA.G:$RW<@"K+3*^$UM$2PFCDI14RD#]*)=P]52W9-@D.%81QV9\:'! P/OF,0=3APND"=O7>A9,0PP!P*G#P%ZF8J]P21?AR6[! CFQ6DN^P5B V=#UQ=I(@Y\)UJ/5ZO9RN M=HX%63?&T76B(B+H3.0KE-]_BT=HY4\X]2EUM1*G@Q7!9<>WFK&Z29>VNX]# M6IC-B&$PXB;B9=:A-@I;:D70L-&P#[C)&3<:D+; -C>W+ODJA'4D7C#@ K-*<8X M5!H$G[CF-(ZR7(VIH5C=JEUE+>!JLVAEX@ *4)XF@["6E ^ED/&EZYL,PDF% MNF(^Q8ZQHL]2XT(,9ZT=OD+,G0">,X YIP8"V\,:X^T4RK_Z"L> M1]HW))-PI;;42XUZP(C.UO$0O=KV22+?@QRF/@;PPB&!\-P(__5%KUQ+ MUR RDV.2JB2.H&/ONA@KW//;/@\"Y"]POM>Q*DH+%"9+(E7Q\8+]@S))9CDB M@.4CE>8]XUY/Z%3TTE!PN>)LM48%_%AK#EB+8 ;*T](7+(\Z" M0%J J*K=X(C_ 1\=>537J?PX/Y@<=SST!YQ$L9J\<(JX3RC=3]U#)0YOG9*@U@?3QON!:M-A2QK'ZYBDQ=HAJ)NEN%L4#C*(&,CX8ZNH$6 MQ>UU\%8,/CHY"438>_"HE+NR ;CC7@D6( 4I$/9# 8&MKI8>^(35;4:$BT5"GHL$"C MA5J%4I4>1UN6DQ$6H>DDHD+'W175!%G3^&'9Y@]B_>W &:Z#3=P@[P$EG1(+ MZ]1-C9.<'4A.G#+7TP.G:SVVF&C]$!,]Q$3W.B:Z$ZY3WJ7@ZG8,UX*(JNHI?<).YZG&7'R'$HMRQA0< ].H4PGQN^GM5KXQ=8 ML:U"+UPZPX*Y8SG!7%NRLMLZ79EN/48?\OPYV]:"@6'6;E39 A>^%8',5)#M M=C"$\A!A!V"R6+PT?SZ6>J5T03N5ZM8*,NZWL0@8PDL5BF]ZA;3#: @RJH)3 M??ZLYE:[;;?3;+[@5,UG=;?1@0^;O1<%V.RG:KIOGMD/K&C*5?5(*><#KW:O MSF&D79D;*-ZEJX')W'-LB;-*PDFV4GI8:Y*2=<&@R[/ MZCVWU6VYC5X-+TZEVZ;\/DK.9@<9>EQ!,0\CSD)%#]F+M3X[SUINM]5VZ[TF MC )2N[O+*+J?S1,LVJ3T9LN_F=SHGJJ[X%+KAH:-LEY*6X'!V?84 MF%%CB",94_17S^G =G%FQ^8NDY@KW:J[NN:-JMONU-U:HT77O-?XMFO>=>OU MCMMH-NB:MYJ':[[]C,\LW$$Z#-/.";>SUJVZ]5K-K3<:3 //>DVW5FVZO4Y= M=5 3R!%L"X 8A7R54[*LDY U6@6:H08'/>I-$3O#D$*[YO;@$&M5((5&\]@'&-32<0 MS +;Q";)-<'<],!;:&8JG:_$;M N&55W\>8_O?GR][[^PA19*N08S6_H0A=H MN-YT.RU0L-MM2R$O$% =E.\.D'JC:5$*BD "TK'!M74Z+%!_<6)F?"5I$+!G MOHSBFR!00$&<]&*F2,UIW"9,A!7W"6VH+"OS V*B-'UXJ3BQ$3@( M^_O%BXSR5)*,L'DP1I1X82IN=BRKNPH3O'Y@(\Z"5!*BV ^?;^9&TVK5W&ZM ML3XIU74""Q1\4^&H]L/LT;IXT"S P4[SZ,(DU+V JSFP#/PR3D(-RD$5!SI) MCA*,X7KL^X38& MI4K[= O%WZUVW46L(KVZL"\QF MNPEG7-7M,(7<*'7.4+K56%XYO(OUYLV>"P:8U;U9C:2)TXL8M75FAD-(3PI, MD6/"59E=^M7K[VEWZ34J;USUO5H>BG'LZ6'D.8,3/,FJ/4K)/! MTM%]N1S6=8F[7^MCV?*M&79GP\$;%2 MOVXYM:Z';=::SQ=0ZF( M(*2L)M/0%^XOXYC1X7! .>=LMH4RF"NU%@B05DW)93&NZBVWUVKB7FMI _)T M0>#VMD2MM7[-B6<207&4L626<#:8V:RGE7U3Z"_ =CK<--1CT8GNY57!6O-7 MG6UJ1$9MMUF052=SET^IF[2J_"'_;/X( ?^P,MTZA$-2_21!7E >7E M>DX:_=W>_BS!!'8)3MR@#?$FH91TF@4I2/S07.$4(3 8JDUW7:CI]XG:A:2 MY.6-!&F*Q@97]=(#B#=S9+)&Y\MXH6J#BX1,A7<51S45>(1AZ,8A#'T(0^]U M&/HL+]9S_J>"3Z[MUMMMMPNLZ'F+W6-)CG=L%O//:@VW66V!+E"%W]:W_;9N ML[&B_^ZIR7^)#0*GUX@X# [.8 BIW28#;3&LSV%!MNXC"A4G=UP'$4[A!V&-:5?U4B MA;OU'290HL_P+%O_9<*#Z[:AJ.&RJX1= W^J-%T_PYFVW"U]FT:>#50A7 M'[9!,1-R'Z'3%2CH6=?M-.MNH\O.'_BST6NXG7I/,9"<9VQ+[LJ/2TQY)-O\ MTMYB)1$Y=@FLL0?LL]7E/6[4W5X/]/-XR5=S&*BIY5=)G:E@).=/#Q2/>6^R;+P0P@&=9B.CP]8ED+;ZZ*EY0HIU9U MFZ#+]>IMYWFC2OH8/60BG4A//;?7ZKK=5G/#0[<2V9N\-JD+JIO M=($1'X3]5^[UN+C/11.8[R9L=@_X=[ME&4[YQ +@VXT6'$/7LIIRC6'* M!^YTW$:U[7:JS8*+N%9SV^@!Z*@OZLJJL!(?)--.(P B%"T&]NP^PMQS$R.& MJV+;YG\\'XWL+3V MZW/MF+2!A&[?32_%"9_!/KU!(YG>EV^BY:_%C)NF([(EK?0+UM>K)R2;+Z7Z M9IZ"*L%9Y@BKMO)4P9ENB9B/HC9+'.AV6TE!7Y?B)6,"$HXDX;$ACN1ZY(%+ M,PN9EH0<&3#6J*G39)6CYS;:8 6T6\PCP*ZO@5U? ^55*P$[ZJI;7OI5FBO# M/=O5I.8RZ&YN:,B'7!EM-:5Z%7 #*0&%$Z)/RN(SJS+VR5OBUD%=;W5KHKZC MY@X:?'NG#?$#LR'^UMGLM!MT M4-B48"WMY55.+HV:6X,;U.UV=;:A?E#KY!L4:LQ#;X/2AWGH]>J&WQI)\:;< M#;PQ2VR37BZQF^(%SBV::DGS768W4ZX)KYV79Q+QT9U?K=1JV\H]5-&&Y)X]MGAS\Q!O/L2;]SK> MO*=RK^B1*8T?EJIF>?NY"19RS>U6NYO]:@VWV:Y11:#VJY4E6VW-1FYTFRH= M.1_$7-/K[7"ESL,OV#KYL*2V%S643\G[P5"1]Z_O%#)NC"P6!#"E/^?CCRLV M;KGACNGS8H$$WG4:\/<%_=[G.ND>HG_YSL+EKD&WUNVZ3<9TW\D5F+\NK$)* MCS33#8+;D6.::*.%D<;NCTD2?:3<;(U42\.'M8[;[-7<9H==1,_:;J/>!.;4 MVBUZ")K$]0I#=04R2(JE?27ID,!,?&6>J8Q($UQ@-#*";$:_UI47LA47$&PB M*'JZ@[2%OV^KU796B+Q*=6A$**4( :C%NW&@ELW4DM/9B61 ZA")])SG]09Y M$4K/7N*'-;=6[[GU>LMY7NMN>_JKH]7Y<2XWA!DUX6UT3[S9T1%A*'>M+,ZN MWF0OJ_&_ >$A0>H47.IP+T;2C8-P8U?88#H6H%.#_#&'L;-DO_+=/"?T_^N7 MB[?1IUJ[5JL"ZZC]PMKG/86V-ZEDY5*H&._L-KINO;LUWME$O(=F_3OT,J3W M'Z67/9Q[RK9'J'WVO?*NW7MZFR[I@Y/C5Z/STN$/EO=&=YRI95%I>2\\=R4@EK$D-.HF5E9^]"">G MDX%25>".M9'2MU,W>!G]\\,(SOI/IW_\RAGT3T?G\.E32KYO+?789IM)C@)C?H:O'"IT:T;V>ZN6MO_O>3JBX#QK\71#/MJ?P5MI;]Z!K[9'>@DW! M:8(KS06G]:,8TZ8T/!RR63XDE=_R=5,)TF9*$N!AYSTZR-?=]P^VXZ<)&H6( MCF_Z "(/H5SJM=+T]5-H6#NR(9E:]>:43BVTI5@8_=+N.5_687NMFR$ZG!^2 M-@W%A N3#*$BR>7;L^6>_E3;@WDCE 7!.M@*A$*(;&SM)EN+7T^G?[#I,R)# M&=MY5JMT-I_A$GM&A+AB ;1=JQO(B: 2@/%?_OL?H# $4>QA5H0736,=LEK/ MKWD9(R0[[)6T4&<37U4GHAN :B*1H=/';\'BC[(HD 6I[]7 M1RXG?I]:EQ;C]LEM8Y/U6T1YN]+3WY-;P,8=+PDIK#6D^^HC]'()0OT@";ZL M_[X Q@J12DBK$!EC*B;*FUZXMD,I#AQF;RS"=B( M$0 'V7R;.^@6U\#3= T-I">=:HF>FJPFL:N=B;?X9*QJ"=OE/T37C>1I91CL M"U+51Y/U8I2.GTW/4.I&!'^^Q$'@,_1/R=L.SA3EL!,XDE'*3?;\.."VC=3* MPW-6WA=.=[\Q-S;7II+S^U6;;1?[BF"#M.N FZH)^-9ST <#C(J\("-&J(!J MOCD,DJZCRWRHC"MVK%9( MU^BY6.W^>17609@O_.C9T((NV&.Y/-,NHU)._' MF7$_-^ZV^Y=TOO <+#S#]2)Z*\&Q>U_V*BJR#WPNA+/UD3^?BGQ[FJSMA#(S MJ0Y66 M$LM6 2N.CCCBE:Z6V86L6 Y!-_7;, ZD72>FP(3L\Z+ST#(X\.>@_F"S/C\M M5G]PYX -FS&']RC ']J,68;K5UA'A%@LX[K8LY%NKGD5>?Z1FE!GV:2B;ZRI@^_PDZ>PB0"_RE6MF\5@=9A:FGX M-(7@3O$Q'>)]GI-6VI>IL%]?D M+=\OYB,UY2)535::V7VM;H+CB]'/RJ\LE M2#CHILCREED3KA_G(V*W;\S^# M.82SXX0= 9\PMU EK&+9)7P"$K9B3A:8&I>ZIC-8+J1I"& MN"+5@-?K6<'GF MV#2ZVT$ASLLF;D6^ULE5G020RGLO <%$YI'/B7TLJM0C=C=YZ@%@FK=:C8SS M%?*4S=&"6-@R3E@T^[JT MHZWZG;]'N ;-MD;4"I6:EDM,3#7CR#VGL[K\^'H!"KHOLOI-KH.OQ5S504?Q MXO((6^)RL]V$&"VP9RQJS19I )P=4WH]YN! 0"]K3 @O/> #^;F2X4R O(%? M_B[$YN48\!2D>!!&8GJ\]+R&&M9C?+2071,!5=B7_D1/9'TFX4K\=2RGU/0Q M[K=,0LYH4!O/QB=P5FV@D%&O?H-2178\I5S5BNHQ8W%MQI'\' *=*)TH/Z%I MG&#^=KSP4?X20[<;6N0OF--!I04&[55-GI*O@<)()@7LJ&CZQ(6ZRG IA)!E]JXY6WT MW!_8+_Z[;]1C2V-H'](8#FD,#YK&L+O+[56NA]T &S2;E8)=6O$ST&/JBCC8]MX8HTZE!*L)!M&:):*3HY0(K::[:^YD0 MCQ^@.:@RTV%,:U;L4A9T?$(GL!0=Y990DS4P@_S:0LV52I>Q*Z\*P3P%:Y_D MB[=BB;OR_(EKF*&+\4#K!7JE/OH@,:-;]P>=HT[_;[WD9VVWU6F[S5;3+2(2 ME=E4E"E:I7-NU6OYRD:[8C(79%L;V0 _<K;-<;:>OY*F*O,'W.JOKJ9D' M:UCLVXS>L^!S''W&C1^PG^ZU-Z55W+$MNT-@91PL5[I!3]W-=S,D3Q.'9@FR M0CLMG>=X[N+AES7TU98H_"<7_3">;?R*[GA M,+M;#\$L-]'[)7[-F>R7@%]ZE_#N2RI95HJCE2R<+1F8HVJ5/93,7YV!>K=T M*EY*#G&&^N&_V>O+69\>NKF,R>5++M4^V%!ZD"&G=8]K_S)E&UKF]QW%PP%?P W-J MF)/ AY^BB,; +>49&,#2XH0H!T*P=U3!H^05!(@ &H6F27SNI2Y8!'/\E:8 MHG.Q/4&)#R)Q<&NEH_!J>@U0,'G:B8$&,R^+[J\0_L&HPMQ4J[-ZV19- N[U M(GJ>AX&E1$BD7JG^"LIFEDH%) =>*7R+_-:2G[P^,Y >J;;>#=(Z M/N'T??@LQ*0IC"4S*P*K^ C41&RA1\WS-*RY=Z,30)&P?H!2X%D MH$7,84+' Q,J^4U$7+OF76IX1?RT0"S^0)TXX W$B!PO7!-[X7*Z)I)EWSMU MO#['Q4HN4;;0RC'-F<1,RBANF,R^B;4BYQ?[ QDJ[^)/?7%LZ:P-%RMTN<[D MM%0F+J=NR.2&O4N>4"41*FXKL+H%D1:2(B83$-08L;@H%E<=.UK$N0%_P6R5 M^F?*_\&RFV**L9!X.M FT"6HJFZ*.E M&R*Y>NN39*+%+>STT\YV54(5'E-*_XJ'GS,:_54^.(LP MI'_SNW"*L8U]<[U9>:V-1JO3:K6:]YK7^A$5,M!CI F9M"2UVFM;Y:)\6SQ0 M7V@K.?&4O,O_DT6BS=5ZO:HR8 IEX*8J(&="TR]D2&T0D1ES29J77U +N#P. M["W$5R>98V>C+6..WETK'6(*JX[G6)^"6F#(S=KD=;X"K$'%U$/C9W5%Z\>7 MV//2W(6J8H(OJ-VET0W\:\6!79*]JEJ5=Z)>K777\D4E\XYG9[@/FGXZ*&"_ MV"73<";'66.6FS>24LOS&\G]2%(!0X<]Q#->ADM,H0R4 M2EVZJZJ,>,K=WWF58)RJ3CO4=IWUSJ_\8.?7/%"S6XHG:B,DU]O\TV9S MIY_FNV,I\U4N&6^R==4P5S&;FN9TQ?-\:JYM,1UR=Q*C!& QPA,4HU?U1&1- MP15%!(\<:X(+":PI8_QO?7-3.%+TC:YHNK=R+HO52%DM1RS0PK0< :K*:Q%< MHNMY%>2ON4<%\FHAVJ6MTB;2%24IP.N$U?!TTUQ!,/^6%TJNF!SWX=R26I<\ MR#8'8B(+=F,^O%0J6>'$857+("PFPJHMN@7_FWGD$\%KP"T=A5?ECHP!"2D# M(?&Y #*41F#ZA8%@+)Z[ H?Z$R2?RL!$&%W$YN-&Y\_+T,0KWO?7453F0/7NIJ;-0 M>+AN1]$Y>6MUVPV+#.05HI+I/9ZJQ5IB6K$2Q=6YW8NNR^D/<,^$4+#NS]I> MXAQ\$*6C$)GHG^:$%B>04.)<[B?H3!5>!-M-+Z#Z"-)1PX6T/I7U8%#4)D7F5S,,3;;AQVES^.,JM&HPR6%76+I#4K\9?-4[;@( M+IH MH\(@WS"PRW5N+)+ MLR4!+N%O3-)$A>,K585Q!_=LA(Y/)O2(CDRH+C.UDR M68/TQQ/V+6Y+ Q'\7 @:ZP%?J,MUQ[R[T!Q9S8OA'#,106A[T$Z&"3$V*5"D M[[10F7I)W*SOL8G;*IR3[DO/-F?;U1\]XDF99ZPGTJ:(1<]E,+X$3?"8*OB?7@+_(3O MV$QQ?@XY1<4;,(6Z_ M&#@['4(VJCRAO_-^ A>1VA>**),DEREH!+1<:;-W8]8M;$N::"/-3(+5=I&K):(2NN!V;?,6)0 &Z3'3Z*B=KFT=((R$ D52![Q/Z M#/&DS(YCJT/81R1] AMU812R87Q0,E>GW; 2%-5"].&0MY5/!]^E MCG[#BQK;7E1K6V"26U[T*"/\W4.$_Q#AWZ/BY[V5/EM#WWT_UAB8^$II6$+] MBM%OZR7^3QKJWB$+HJZ)^K56!4LVR/FP].VLT_[X@XZQHIOUJ-:XS7I^SPT\ ME3M.$B7>L8H+IV/>/Z+"*DE10'6*^;_$].!S7[X+05Y0E#$E[^QE%DHP@'QX M<^]3D!J\J\^FKYWN5:37N88S(K6Z>DCK520LI8\-Y]1C=6,.I$1MTV X>*?W M:1Z#T)*Y>: X'+0%R<(&&BG-;&I,R(^@C3)!:7'U_IJVQJYH =BKD)'EQ&,!>Z#:^@1@ M\4EJ9*A VR,*K\LLV74HUJ7*AB_@WA3( (UJ9""4N&E3!$>6%;"T*L'.4N62 MA]WD !88>TFLPKH<-P:U1#KXZD:X-+BG6-6UY EH:T\ YC<8;P3]1I?BQQEG MVUCLD$O!F<'"AH\XHP-M?)5+-=2][!^4_ZY-?G\9\FCA',.UFAN,,B2KK6PZ ME8XEBO^\[H]?:OXC:3:E/U/L_1=@[+^\H-<=53NWL?2Q^"_.",\.1WQ^'B_# MJ5/O5E_\YHSF&/<59"@@8'Z,+JOZ)4*F1,R(D-$+UX5).!G-*!6L//J1JQI]0/RJ9)SP7 +-V-FNE6G]'YWH >()&9*U/X2U MIWFUM27*W1RNA$DJ]=#4:E!E(UJ-6-^X8BXE03N0YE9@N>;M=9!S#_EK:O>G7EK^%$H4@HVEJ#J].298L"F2*;H,LV2J MA!=N!^Q*H#D,%U0L,EU)@3#$<,L6' E%RU!CFM9:"GY>NAS"#^;Z9W)4,]A> M&(PKO&X;JEEQAD0XFILCHBNZ7U>P3RQ1DL"RQ@/T#7HZEEN0"4K@W',?Q1P? MTDNT^!"P%LU2X "89?1N8QDC=L^>>U]036)NT6F6<0OS9!F7X%.WZ5\73OHE M*H;"W"3(/5)J-&4:LL%^,@G3%\A93."5(8Q>9:7FV"_A[H,$D$(+PVKY#;1) MM4Y+2R&8>&F8?@O)_AQTMF.9\2M5C*TU!6'@X@LAQP7Z02)OF0:_J7_\?@=J MA/()69^@,X+6AW,XBKP;H+'?J!+(]D0H;PJO;I7 ?_P[V=;/V'08&))L+>TR M3.EWL"U6P1$H+5-T/EPGWE)-ITL.(/*^Z)J=7KO3 QUGY=OSRC^TKCI]ZY1W M=(N-9 \>_Z:NW]=JR1W/E]VZ%K]/&N];HO[>-HX&ICNRA@9E/IG?D%I MBUQK8?IU!%Z"WI7RQ$4WE]FH@*YR[F9<".>ASCS,\D\MLD2H:7B0/\:UHB,[ M"CY[U(Q'IV,J5XP ?%&90#B7PJ5\:]$#9N+./B+G+&#\3XW5.6 "'!.%G2ID MR]/(>Z)]@2F*@,Y]*D32B 829+09(Q;$Q-2V(Y%-Y0Q\K-^V^J $8>%>V[? M5\5MI4+)Y@;4+Q1G@%3/53ZSKQIA*"-E]^1FQ5QVKY:.6E M6U^24M6!=H/BKCR-N[;[Q1II3_%H,>-RIWV[-W9?KW:UTZNU6_>*?_!AO0P6 MKU*A#,:N7\6OI1K6H^Z%IHL.2 C*P90\8U4]]C(!N@:J_R/$%YM^\F:DA$*F MZ/7W,M!0O95DNN=@X$-UA@[C]4G8@>(0%+0 B1QCUD8^2)#[V:-,I^P=TBD/ MZ91[#9B$-]D&>'!-OA?#]"/T!:5 H#F+TCE7T))#%U&I0U8!G-U%5"'Y^W9! MBLU%6!%7]CQB #C/_2 %13B0- +%#RAG M]-';2ED56OEUL;B2\R&L(3%\JYL4X)PHJ9S01BB!@QH?$-B(5+;E\#1, M19# 2N<+=32^WYSX(SX IYZA^L_5L2J303<^+NF@3%DJ!,I@YZ2H.1/S3[QK MD_F%N7VIEABZ:%N]2LHI,ZPJ@!&!+KVD4!ND.VZP<51QQE?T(SN149\F'O8J M"1C@GO )W#+\DK*2KD+-%<^,D#YY*22(U'YP]Q",4X\6*E7/+792(060FI=2 M4H@I,"$1IX0:"[#(U#JJ9=M2ZVGH=+=:[%<(=X/-!0SD9OX -^^WR:?<69UP MI1R4GB=RQ5]P*:]JS&=>@C<9"%AN:N-7?;"'LUM+ROF'%WE!%'O.JP#4QVFL M@ M@#_^*0TKW0!\,L1OJ)4%F\,>CMZ#1L],#>11R(/:=!3-"P/ULH<@8"-RW M\0(8=909YP;#/XVYQHO*<7 HUYED8>2[&AQ&$Y1'U9R@7:S5ZF"M$L+^IH$G MTB=@WA6G\Q@S8WQJ=F(ZO5LO/.7-[80(H\7=UYB#L\0*;;9+2G429A^ MXLRF+*7L=)(C"D=-M^XT,"%8+R?=6V+:1RU"UN4&$C8W@5+SOI^Z5&T;3*JM MZJ[9PV*=^HW&K-V8-2YZM59PT9RV.Q>3;J=Q,9WT)OYLTNP$DYY8K?R+T?GP M?:?_SP_]X_/1>?]\],>P?_P*_GPG?[T:C0?O3L8?Y$>[14"T5;(6@_CJ,$*K MN19&N-,#V!)INB,A\'QCL08=U-%-J][M/WJA'YAEI5@^>D8-G MY!L](R+;>K5VM]/I!!>S6G-ZT6S4JA?=::]ST0EZWJ13K0=>8[HFV[JO1\?] MX\&H_VX,7&[X?GA\/@:^-_YP>OJ._NJ?_7F0;:6RK?NX1)L^:,><-(FXW%D[ MK_KG_1\NS.CL0X+=^ZW1O@M^_Q6I)SP-?*MP%KQC4[Z;>5Y6-?0GC&Q=5JP2 M]589K2:Y)9OH?@ZKB (9I0>Z-]1^Z'^/L*K\QNS_6O8 M@5O9K?[>FY ;,/@=2:D%ZV+P/6!@O]&_L.[W>=4]@J]>%)9O2:SB+2BLFPE7 M?MZN]'H/N'+K$JUOPBT+I.NPE;-]Q0G_ &V)D[7*V-+M!R(71[:G5D$Y2#Y' M1RD+[GRMWY^1''W$Z;C_I\1L>OAO]RSD^G)V M?O(:S^AT"/]U?'XV?#,:PR4:OCK]\/+=:- ?#$X^?)M&SV74G(UA\(//$ J7 M6UR>9A,PBNU"[]=A,K?T?N?YZ:!_\M(9O7*.XXKS]_ +C+XX1MA@^!TI(U]6 M9[B45QG'!BYJ\'^82GYQ'E_4ZA<-^>OL[9]_#/WFZI_#X$W07657GYK=?UW^ MXBR\.2S(#\+?^IF/>+\X@Y'_"VG^QUZ27!R][4;3?S7^J T'?_XSZ_>J)R_C MB_XO_]WN=O_^M]R$_OO%8Z3>9OVHV7B,Q&OSDY?]=\!.AN.WP^'Y^*+;[34: M[6\CVH$=/GPIB"1C1"1)!4E#E;?:N/-6^X4UL_61D4/SL=."$2C(V 8G[X<7 MG4Z3VLQ\+SV,-7P)4S2MIJBJ8-/S?3&&T/S'::?],M#/HC]^^?G?R$61.O0W__\YI M9X!I*J\I3>4)TDKG,=+*\EFJ$QXU MX$N8&C@GE5Q7@L9&[U@@:>UQ M-#VO>^%U.JV+5K55\Z=>K]ZN=W+!RJ_PZ/R0FI.O]$:78@SP&IR3UXZU"LCL_1U7^GQ5_F6>GZTM0>>HD#7\,R4SH(=?NQF,7K"A3L+UTZAMV)V=OM1PF,)8 M]ZW2^-YZZ*6;;$II>ECH2YF_2O\GQ=(T,&ZX;NV$:MERSX>I-#BFUK34V#,G MR,Q I;/@4@B!TB#VG6K(4<]9<@C21M@/DSF"*JL@I2XND6BE8@%6U/($<_ZI MG[B@6N?NT OG^2\4QOR%X96+S7R;M_OKR#J]A>W M.T)4:QZJOZX( 6*>04PO"H$$"(0$&IA^_#?-=6F/C&K4;+?!1I[6XW_IQA](!A_*5OC,/ZG0/]Y057A!]R5J'1,L6 M9+433GQ/?X/U!;Z%PF;U5,3;VI>@##_X4^]H11>HE6-L[ARCNU472B1[H&M! M>OA D<+4[[O"U?".V&N@V$_@.4C] 3#8,9Y?O@*$?;@=[N[@P:45O,JN".-1 MXT-W]+4:IFS"PB3>'LQ'L[OFJ@>Y;@9!V0#5.92"#_,ZA8Q_7)#@@LLXW*MW M0[G+?+-_@>?YN\\K4-\-;D0_JW-\J-X"18&FPZMS3^+@6=V8%Q\!T0$%_4[G M/RMT??[E@^K4IJ$O=^1Z1!6[.@K!Q?\#D3YE/S^R.#['6?ZUEO$[7#10-L#R M T$H5:RD>@ I@4\!4<].*L<&^S$*=[=9.$9!JBG?,@:A]T 'QF"P6^U_K0+( M!]IT?UUWGPUA9P\>MLI7M_6=@ @JJ!]]5%#U]ID4??;K??VIX/'P-_"P2=_I M/]7[%?LG\:^=>1_0Y>YD"C[VF$4.M4J.JP1=/(KZ)_FOX'*MN=S)J4 /AZD9 M@!XU3: 9 H+;77\VH*;8E5PT:+8>"A;5A!Z: M0!S TJ";8]#O=_#S7.^I4SVHQ*#"A&2F'M+[3GV 1V.0U([>9T=@K[Q0L!2P M'2.%B3N MH'#O7L9=_\VKSP \I5US,*GDV/O;N2#1IO=9")-'[S9A0(AP=]J M,!%GL*9>'.&]_"W,X_(K$)GPNY-?AT\./'=!V"P0A4 IU(_*?<5CTFYGA#D" M76\7 0 7NZ=?N9#O_4Z8&"1A $CHA^XL&"L1(_=D\\>29-@S6WM7;6VKNT&F M!S@C0181SWV> 2'PF@:Y OZ]XZB@TMWS?#M/N4/"^G.@FT<5;0UK[L-2O4#> M:;O";&$> R"6_+UW5 L+OH1'A/L^>3;,]JD?UL8N_8&W(\(PZY%]J-D$>&04 MV :>O8*."A<\S VC"M3#._X_]UF!([L/!GSOLG1#DV+_O#Y4EHX^A/[<4":' M5Z) OX+\B3O39;@K^6L#R0Q>\/A4/5O"?;Y M0&S>9;@#B<(=4+C#!\,=/F=_V%?WW(5504_7+B%RH%!A>AP_((LG,W1_$!/P M["$W3L!RZL [).O!#BUV>_..?_6=R7Z4H&KG.WTBHOWN$_EJ]D[5H\)_ M@=?LQ4YW/-+A#@#]([L!/1IT*,?/*N3C?6>?[/J9]^#<#AMZ;%[LI4<[[J': MVQ/I![LP, U>\78$YP*NZ\^"K,&'/:9Y=GL_[O1N%SMX?X(]Q/;=H\[O_BA< MX6$C4P7IZ]U@PJ MJ.=;[B&/VRD6W($]#S=L,/9'I2%7MC-]:9_N]MG]CO\,7-CQ&CF<:=AA0O1P M301J[8Q(,MSP7SO#=S<>^\Q:07?VNW/PWMC.K;]SNT(N.2Z''&J#,U(A7*%/ M$P_6P2ZPX'F6Q5TV6VMW@/:,(:"\#$Z)0^O_9^AOV5F2SYY^,*'/F\\A$L!D M[\WEH-KP<\_:DPML[ZA^J63VBS947$_,N2^TK.VNYIW)I(=X[N 8 MO(#*:T M/'+HKHY7>Y#?30L)!R: .\MF!Q?LKXB/:T1+H)SIZANKHAQ5*_GQ;U0NY8^* MLJWOCM\"LGUQ !<024A#NWT_3-L8ALQ SIZ]=/*_/"_;\<\SKMK;D?MXI*-J M\6>V5FP'IH/Y?OZA@)L-,#CV\%?LG\:_=B^[U$U[OC?O]H9F'Y"LOMOUIGJ8 MJC T_<'&]4]C]\>V-;*#,7@R$<.#^F50NSFL(/#\B:&Y"I[PXA&'5SO\ ?1U MP!2'3SV#[9\V72AIE^'9_S-E-=>M@]+XVC(S!Z,SR(?S8N'N 'Y(2H/(")'1 M6\A(>I(\3]@^Z-6CO)_[M-O'!X.7U+DW=FQ_-#X^W86'BMY15>4GD(9H#L]1 M/)B9.!"30?HX@]'<0$H/MZG6CX4_&>_^DZO?I,PZV[O%.^GP#"Q]\ M;#(>8?%@+?^,[1%O'XH5[(*D8>V>P-T-S]J.##+-@'GKH7,H.$#SK8/3=A_@ M&QC8@2$N/H2&:WVX6.M;"^7! ;]!3R#L\>P*Z\J\FU M=]D RH"13>&FZJKPY\=:]_P)&@(0 E#$ 22]<1_<67,0!T?ZTH5E;^!2V^V/ M1[\R++@M&OJSA^R//U^$.^ZVU"=WZ7/K\(\[;.1A]NIU607\[UVI?!$4'Q:* M?U*U1X+N#^(VN"GH[,)[ ^"%E9SVQN6QS_YG[++/2X/5/%X2B$T1C'_=_KX:<*'$\4 MX^R+A$2<%.[4@85>^S-?>Y>:@6!(82A0NJ(-:4JA!X*F\$1_J.A#%?R*T/J, MNJ_L&?Y% O6ZXWM#&)C^V>1#9:*MFS MJKFM+"K4:Q__=O\=IN#XA/2\9?"#H^2\C8Y>VDX$<8ZWUPEE/J76(Z$\^L/[EE1GX,]B MQ6(UO++]/(GO>W.E[>#RVG0%H6) ^D$&_=PI^T@YH+]>KM!L^>JU^M&.7XD> MH]2EC\WEI_9MGUD%%HR%P0#NV:"Q?:126+"7Q''F)YJXKYTXA+/[FJY/V)V+ M=GC%[L?>.*E,4Z0PX-L#7.^,?(>MMM(D5U,8:)RTX>61JFK.8@D8S8C!-+>. MH:E7VI#1PKE2WZ!<&L=(+L@Q1#_^;'R63^I#.5"_H(+S]TO<2J&;3.@FTP=O M,NV]@RS/\1I%*P0/-E*:(FBE3PFJHG$"Q?3Y(<[3^E5SL)[8N7](RGJ^;%9X M7R&LG?6%:2"#OWTJ>'BPJLGW>FG?4",F(E.P>[M8^'H1RF,;/(F^PEPH.J[I M+*?U%4)G-87&AYHB\*JF#'E.536"H3A^/R$'[_:@/,WJHTJQ.35*%"_1-CN( MJRLH4U^V'!)>;5@D\A1.QONSE:08$[:^4LC3EGJ\G-&JA.-*OCQ*)19-M]@< MB:#EB;^^/LHJ"U&3MU*!:Y/)*DTGXXG5.2^\/1Y,G'E'YF5U+CFC1:?#9EA1 MH4];9EOX8#,J5B7)D#BB4*#&;"J^D\3/6S+TJAQ/:;G>=-$R:]E)UTP;Q1%H M>=*CQ:8]FS<6X_54[:2W=;/8+V^&(FAYTJ/YNFH/%O4.+V7$\KA4ENM=.R$> MG18<6F:*62*W2-%%/&X49YUROI*LM58*=]K2'"1+(V ;L'BFG"J-2_.LM]K6 M%/[,J4:33TGUYHR>9HB\X1'YCK,=BXIPVG)(Q-=XSK$+TLQ-5'"G'F5(4TV&%1',X[4P/'J52BE\USU@J: M.B=->47NFD:>J,J;UAJOEC-F:VEKE^UV&S:QV?>;Y7G6\:60*O >/QM.F, M(@OIQ$C/3G4]*XCV@I8-<:209V9+R5E\N496'6F63FW&NN!G35Z$34\ H&T8 M96/>,Y:@S*0JU%6QZ@H Q;AIKELG+4L&0.UF[I/8&2]#TS,16V'*. MIWV^A[.Y637IQ(W"D O<&9BMXV^M\W6ZR:N]M;C658D+4$ (W!F8HFLQY)I M)5.:)JW*[FIKS3*>13/FAZ9@WH@\30*S4G_K1@ M"PM'%*=%A@7O>F8-3-528]CSR9&T*1.5^DA9MAJ !ZDS:\!?^7))*:H9O*!0 MVIJJE>/@BT*=F2U#X#MMH=U-2WZI5=+=$BYR'AB!X,QLV23.6+527\ SG6ZV.$TX M@K]=P:;4";_/4XEZW,@DI=DDGFIVL@.YRP1//=G8YYJM%YAB:0T(OI4HS)9; M*P&V OK,&@#OB#MQUTQ(8!+,2IZRDGE_I-!GUH"_6+08*F514K+(B1W#HBJ- M?DVASZP!=KWM#RB@+:;M3*T?3TR$#--> :E^9F49"7(TX$>63)(USJ\-YVM/ M!N]Z9@W4!IS :NVA)VWVY*M:DD#;IU9@UL7'GAZWBJ+15*^JS?Z:\-25@I MS)G9FFR[U,;NX"I>6;2DAF/6[1H@>.;,;.69+K$J ]6 LU*BMAQ-N9+9!TW/ MS)8*B#@.(%%]S][_(+2S@Y__,39\Y[K3XI?.+5>,>? M-(WF!.$#R^.C= P*J#/_SO#^;'1_<^]B?#?&E8[@=&\U(8[$GMZ/WH]3\>GX(@ MAB#V@_PHQ CR)T$^$L1@]-QS/-U,>E^EZY<>EPG M=S#0]>'P*Y?"Q?Z*C480P'"551_2Y^?V_F\VF4_<4]"@G/,9?3Y0CJ@B\.F_ MF42OMBE$BQRNUCFTS%_U*-SE*H^6*?%7>UQREYP!)DPYJIH=<5/A XO[[9;! ME^V#T1JP+]GTHH_]>S=[T&J]VMX5_<5ZQ_99F.4D"2O*!ZF[X#U0:C7O8TMKL)FW9V%7Q\RPCOP<*R[4IC5WQ;D1LI MI3%8X-V"I<7Q>*';-#:C#)W9X57:4R/+XN6QS6)Z5.:K6>LIGQBFW- MRX+0!'^DZ0-CIIKN?W_@/V)!JB[OOS^,M??+\F>:[>U^O;]6Z[OQD:K.?T$P MBY8&_R<](5GTDJKCP,IM+=7T]1\Q%TR3'CQY?WN@-5)JA&0M\795HF63*P!Y]L=O!LCU(?5=BW=>U"Q?@>2YB'LM"^WJ>]=L>QQ63_ LJQ[ M.Y?9&=8B*%Y:6ZW90C8(KA_GFG&&*<(KB4"H4#Q&DBP0*I=8*[K.A3M1)0\" MVZ]U+MR[Z'@G:E7>V8[[<:=M:UA3+EO,3EHMW' F M-25;U#.I\0B@&SI+, YH&/XBNN_+5U)U]+EJ:$&9!LO=%8ZPO;'N'"I-[(,9 MHF]4/*9R>1 >0\Z3O](D.Z!*(4Y%2ZM D(H!-E^WQL@$4U5,OS:5,E:FDBJ; M>E?)BPH?'/9@.,-B%(CJL#$V8 M/BT0(BQ-820G/+(C!:;BA-VZM@*)O %U!Z(D*BL%N5.B+UWV.&X;WCCINV " M=N1WT9'LQ\N,+%DIF)&0;/;PWD#6XS4ER"Y&$AC#4$"_<,C-@F"/W"Q1%#T? M0SV%SUW*X:64U,A5!&G>E;54<:4$B0))3" HC",?Q_OR_+X(3#^N&2Z<(\/R M=>VH"OP]V",/*G2^]L+QIZJ>R-RM_G(RO'KH2P#PRC!EN'/;5 U9[GE)5*8^EQ.G-I 5'_J** *C^4M>WCOV%.T^ MX=*EW*;MJ>;):=9W2D-Q#S(+C2%R6T51L[U.NKSO9.FL/^A/"WAZX7!.'1]+ M-5A?!,@P@B QCJ QBF.0B^J!F02YJ.Y>@[V.\)(]:5-RRK=EW675?J-=$Q)N M@' @JP028S@:(QGV =Q1^"X8"'JKXJK">$7!4"3K0T:0^W\\&)ZJALK"G-K$I)8YW#2YF5)LQ&P>L!0X_!>!ZP M$HDN12'VT;TO NVXZ+2X.2AD<0+C:08'\IC6=5K\/6@?P9"5L 8^I*E MJF5)M!.N?PI!B@<%H[H;R X'\6X$<>3RNI%O>A_%N M)E%3JYNV+"TJ!:!W9&4D542(<2!7*(S#&8SE'R%?3/@)APMA6 QT9W=0= _V MPIWPTX.0$?)T7.E2]0%C9Z@'[].M;C)M9J?Q2:>Q<-FIEAVM8,UTZ.# <)K! MN%L*#(36!T$K\F]7?63R:RQMG(!6%EXO9!A<$S@ M+X6BW;U7 XZ3ZT''#_1I5)+Q1"MWI[K^3N@I6O.//!I1EAS0*^MM2KHWMK4G MI)ZS>#+>EF4+KIB=MF5A9.;MG&U KT:0%9? :(+$" 8EQ4501WZ-2.J5MR.] MJL_RZ:98ZLKJ9)*FQJNJ/1^*$.DL1#H## R:NG*P[!>NVHQM:RO#-._!/+@3 M6GH0#D+NC+_2%GM@G!8H"IQ& M3@R$4>3$N*$HN #118YW!EU:RDID=5H99[+#4DM;08A"%8!C-,E@.$$]MNL" M3-?(Z)OZ[D[,=0,\D47SY8."G!?W+#">\!F&J9=U3UKOK@=>8#8ITZ*UI#!, MX4FE56CB6L*>-(!]$V2GI3"*H3""1W=2$.Z1)R.2HN6#L-=G(L&/NOV.3++) MK*W4<(?)U2#L@\0I/,%C/'_)@7E?;HW=G6AK%#-UU=5CP3*(V\.X[^J/G;#V MP:RIZ(\ \I3\I9 Y8+4(H5J'W:L,93?DMS-45DDJ]J19ZG2DA26M*;R1I59E MH&""I+4D1E ,1M.7+MTA[PG"._*Z?)6 >2_<^4HI.2IL4IZ<%+1\7:#;5K-; M@W /E O.\!C%7W*6WKTG)L@&_.V2W"([#/E?(BU;GG)T7PR"RVVDC,,F"S5Y MQO9YLCRG>K,ID"M"Z'"A<0X3N$N>9.1P04!'#I>OTRMOQ'E_6;![J]38PEDS M72TUNEJ"[@8X#P)'6%; *.[*P:Y?N&:+MC6*>[HS^[;):5%J291M]CZERSMR M2KZ!^ RRDI"UBI225;&_+DR859%=U\![[S+Q$Z2 D1=]R\@A@V@!99S]:J%S M75:@TYGR*-N:3W ?/+;82II)H29"5F#?R IW[[=Y0];9[YAM-B+VWG,FH0"3 M:+8/HYTB0)K_N*G3YZM['B42O4U2V',WB%*#_*PF&$/9;S9DNB 6],QFI)!$ MJ))XC*8XC!%076A$#+N$TJV3.\D&QNO&VZD+>F9-&Q? M03$G)G+%7#,G-6)B.163:G*NV45> W1*_#CA(*]T]VJ=1C;P-USFD0N&>.,J MCY9%]U=[U[Z$K6FHP7(V].NZNQ%\'P2K7WR+XG/V'[1:'V2U?NT=@-MM(U'1 M F']ST%O1$5=%(% M.S%H.H*HX@K5\V*D!J*Q6..;JH>D$-SU;FJ MWD&$]JU'X,NM\3O0/%O=L375'9]$>CRGN=?9:\SJ]6XY/IG*<9&Q9MZ\4,CE M1(4,TD#".27(_Z"@>83PNSSXC1K KQ[/]5:4^^N&).;:K"MEU.&$'J;S$KE9 M093#&A@XA?'4E6.[HB+%#Z(E<-@,[!D4>L'U@3NU.J*/Z@B:8H]]:GT'.N5/ M-!888;.Y:6]T/:%;^M#P+IA0N?228:PR_ MF!X?.5\0XI$'YBMUR_L [U0V(\)JB'W9D*SR;#$DQK/Z"@(^2+]$LAS&\%=. MA/V%W@9$'FQCV,P#<*5+AWR7% V!]-)X--;ITF[C>G?IWTZ]U6 M3<,IH#7XL.@6PY$8R]PP535"[(,@%KDZ_BXOP%L!:R\6S8H19^-29=@9Q?OM M*==NK"!@@Q1(%,=@-'X=K?#:;$?/ ;(/@ 2#[3O!@19,E60_3U"-(E4>R$"* M_J @5\JMTUCOSZ\WK[-EJ6@VBPVUDIZJ4[U ]+3U>%NN*620&))F6(QG41T. MQ!-??DKTO6GBMNFOWT 3]7:ERS.2GL,;"]$4*^--HS<7(4T 4<70@"88XN:2 M*@+Z:6X[P?0"\60>O]Z)XFB>GD;Q"M3-3?+I9:I MJ4YH%2&;WF[F$Q%"'/J!"!H3V ;EGF;)'9]OP MQDG?!1.@.V^PP_K)KM7IEE(Y?%.9S5J.[1;=Q@J^(] M+$92'(83ERPQY+!! MN$>.ER^3+A^$/;>>;+EQB:/QC56O5YJ;4;M7%^$[!G>,>)S"!/(Z#I@H>%M2 M^E '0Z'%''VI6SX*?T&&%W*N1$&U[(&9LP: N2[<-V"-N2F.:GU\5A-9;H// MNKX]4B@R"- EH$BY5(0(N5<0RI%[YA\3X1\ I49+V#\M6O5?^':?T.!L[-) M^5#ZU_LP.-&MJGM41J^34WK63PRW0WXHZZU:W$M5#6+N ;%#!S7(*$S @=ZA M6>0>0FA%;I[/D1VO@W75<=IX?K.>2V1AY#>6-;)JDRL(5GCQ&EY]9#&&OXZ; MYQYN4X6?4'P6^HO%K$,-6N3E>9R#]N@/"@K,N6W\\,7:TM5\O+PL^*HOL4+3 ML/(35DEN 36&*8 % B,$E((&\<.7GX1];WJX9>SQ17H@U[6-5R\.^K+O#=IF MHM:IYOHBI(>@]#R+$1>/P._+!W,(V/'4]4WBC;\UC!_)9D,>EBL&X#35]9$5 M5];/\1 CDFQ)X 89?%.I2/AZ*BT&(\!#08)?AL(QCK^A3$&X?1#<(E_+]4)J MW@+;9E?@$AFC4<8W26YIV F'JS17$+;PPC6+8Q1^R47ZB%Z7)[F%$M<@LPJY M71Y*V+R2D>*BB:5V.A;>*Z8;.+M:KQ)>>KD9$C6%XL+4?#S) 98DD0\&D07R MP3R2FOH(5\RR*V&%K_I-7/>GP^V\L"PJ#1%R19 5D!%PC*$O<<5].62"*E;( M$X,L.N2)N95@@0@[-N,NGA6EZFN.D*PMSN;;64F9Y/6\"=@G3"+,4!B.(R<, M@BQRPMQ4-KP'L8MISF_PK,Y.,T*AXNFK9:,TJ4'$!L;\!I0?A'Y*Q"THC)H#W%!Z 19]V7=O^'*"[KJ,]I^2!+WJ.P9X:E8W MESKL*?P$U7+C9\?^80]^(Y!BY0MY\97N7JW3R%_P#9=YY.(4WKC*'\AVEQ8^ M6,,/;+#?P3[V(&C^XN/]S]FAHK6XT6J]TY/MVVTTT5(+2=L*3'O5T[58&WQU M8DG[9ZSH:3_!1]N#Z1AL0[KC_K^8OMN([E(T/>:^%*VEA.PK9%^A98[LJT^W MKRXL8_9/R_C'[[JNZ?H,%I"/S9W]I?5@Z\-B^Y5\Z>__<=G_'%:I#[S/[EAU M=%>1R?RBI:5;XI2E:'JNR^D6X:_^V@E-OL,)7=UWM '[656=BM/PH 1HJ::O M5W6G 5_UI7^ZK#J.,DL4BQTEWTY+C0S7\I+;A#^OB&",;S\*;SEP^Z11<*6\ M1OI)V2FZG=8&45UH\\_=G(KER^L-3$8R[^]3KLU- E3M5 M:4):@EPQ<2H]:W";4K_V";U_RS*\>>_'?=6SB;[0E>*2NF[7V#[1-D#O21Q_ M)7+\(VLP'*3_G%UU0/T.XL8Z'N[^O[+!_Q13WC3TGNZMIXV%0M5PO=)4.?&B MP'[G]A7^"SX'] <,L/F?8Z_9[D<_?ANNZ^O:08J\H;/P/.GM'74*Q-093U16 M)KDJ/67(0B)#C[Z@H[;ON7!1@QWU/;V-!)%\#I1RP5(X"Z-2AFP,F%7>E!:T M*"?C*CU6^Z,?OVD:(X5SR7C^8AT]*$U7GM;?^:V2KDVR?E*I3ANCZG+;8'!] MXH,AIFB,XJF_X24L!K[,=?!W2]WIKIJ?Y6_ZJ_&3FK0U5LI64=;7G1F7 MXQ2[GOKT\3,3C5Q'GM@>GJQFAF6%&=/%]3?R5-T8 N^SGXXF\4U>'G%(LAO/ MF3A34M*;ZG1D3K/>'Q?_50SS&R_]VX[;:AS/KH=,Q<<+]9)LUG/XQ.V"<2-I MC&68+W60+?+UJD#5TU69K33BEI]H*GFG]H .,FY>3.-X=6#(#67.):KY7+*Y M^8J.WK>#+-HXO.!:<[949=-B9ZEII<0Z M-ZPB>M%#G^_5N_&^\1Y'PQ$SO>9E6+%;?*U/-BEY@9M]/FW)N;4Z4NB@2EX@@H[@H1Q!W'77V^+_'&VN7*_$"EUZO%LLXT9=6BG,YTLE83?L / M+.0'0J PCKQ.S;FOO1'$'OD5$R_\BA'V&29V"\/B)$<>%)D:WLC7:I:74VH# M]M-]7FHUSU5R^':!DS,N7EPT#4WL_#$TZ"M]AOOQ4]6ESBZ5E(KKW>5*+U1G MRV)O]=GC-Q#U9)=EVE6<78\; &BIM*:]V6?XFC\PHO;8VY?N;7U6O;0Y&Q&Y M\4SR5^9@[?.JV!!7T?4QO'W)WGC<>"_)+@J.BV>VW6UQX"D;VP%@)^@W.OJ> MG'@/-]+0,P='>V4[FJM;?^/.&7=5!#[)!+#T7P(("C")[/4ZC7PW>GF4NQVS*7Q3=D.F^/FO,1:XH0W^Q; M\!WYN)\_6> B^#C8)]4$YHRAQ0TK-E#GAJ>:=^I>>TR=$Y5%@\XPHA^9_ 3I M*D!TSDJ&>#Y#?@)']<=25AQ(*D<[Q4:UGLT2*X4.JH@))$;P/,;SZ#@"81T= M1T0RM/GM4)]IA8Z:$U-QV= '&N_P4R%G!5 '.H<7,!)G,((1'N9DH:Y[JF'I M6DQ7'0M\\*-6 ;L'[?(]T@FCK.$W535[0$L[/(N#@3_S37C0D]*'QL X5\HH MT#00."2J/X;0CY*)1UGG? C\]=5$ M2W>J6UINN&-ZQ=2,(JO4(/B!Y&$)C*0YC!6N+'FB)=[#@B@H]]T]JZ=(+2CD M^8FR1FH<@3G,IWSN1(M=X-JDE4A)[9Y:W XW>9:,BPHM! 59>38H'D\2J'@\ MPCGR^D12#;T)YNJPFNI:7).2&A*5UQ+;I6F2(PAS6/6=$3"6A3 _EYCFWCP^ MX2>4;2L.)\&Q31-\;LP \^'HKH<\/\CV0YZ?.U8U)<.R';!<41 M_6$%K\ODK4%N'@1UY.:)L+!Y ](]<[+MRO56 M4XX7V2:3=.C\'%]!I,-S+ P76$S@V$?VZ;RA JY^_5HZD;?9[D$.1:YT]!>[ M>A"5?J(K*&<-3!^.8=5V8 =$SW.,ON_!C/!-&UA/1\;3!0+>;CTSJR0'W'13 M)M0JDZ@XY[ MQBT4X!;-]F%=E0@PZS]NY=+Z_&Y&B4.O+<^.JJ.+EO8FASZ.ZY-4;:&X>*5D M-SN61A*M]DAAR""5-,%C-,5AC("\7 CY5_5P?6_@7UL\?0#X4HXSNHD479", MSKA5'2>)0=D1(?"A+!(H#,=9C*?_*(O^'>BQ:X'U:)(&.M1TQZOB!5X'MFD[ MO\#JZ>,,?O0@^K"D#T*=?#N@/Z4?S;$>4P<#>P8^=@./%2W;@U+, 3^V@C/& MD1/6/=U>%Z>@JX&AJ6:@T,T,C=7X9T?X93HQG+W_\+OAS&R=15 M!X)T_&)8*/@R>XCB_W,]RGVU]R2]YY@#TFCZZ*V#K__G^.6?C+#X8;X#MCCJ MU3A4N&1 '",]WG=T=1I7A^"#?ZGF2MVX>V$N_*3V1/3K0#AP&&* HRCF?V)' MW\/A.!G+F;J.'XW8CJ?BIC[T?NW^;/^S@&0./[3=X$K%+TLU>=#?6X$U8#-%$K5!@0]9!5&':H*30&2 M%7164U16H'!2Y72&5W^$GWJ=43LQK/Z ]V2EW*@45WLVKQ^GS7 FCOO9:(*O):G<;%32N7*R4I(4CJ,9.CH3\?2& ML4HZ%K[C;?: B>]ZQG!SPY$'&%#) 3WD%*:/XPJMJYS2IRE6P8<#GAX,!@1+ M:[NA5_<:8+C,*YPZVK:F9,Z(.WY+6K2TE0(DRLN6Y8Q8KM.^*LBS#C[HNNLU MJ:=%A3QMV=(ZRT2WOVC*[+AIIDU[R@ICV))YV3(UPO&"4N+&>+N2'2263,?O M-T2%4O"7+;MZ=IX8=I+5::9;78]II3WJ3T>@YGO&#&H*??KI5HH=SUAO:R*Y&:D M$/AITUG=4!V'X!B97!/)!EG9=.6:J!#$:5.RULFJ3:([F[;[Z2+OCQ6GDQ*A ME#UI6C7EM+>T-67*U@ID5C$2.I\ +W!F1B>-5F;24'4%WPS+[E@MSO#\N*80 M9X8_W3;-1&*T%J:LMYP7.YD982W!(CTS_E8KG]BH54G&"\GNPC"VW0R^#II2 M+YNRHTI^EL_GJ&E!V58*Y6VMY.N@6V?F*FVIU5'.9XQITBRF<=)*+JH2Z-:Y MR5)G"0 @>H17%L(D+S?Z9,T'3<_,%FLETQDJ7;+E3*K7GZ_M16= @W<53IL6 MM;':)R:T@;/-C-XPJIV^K=: '7%F!-B,)^0[;5M6+75:RGJL7<@#])V9V)4O M++3>REU--\UY5BMJ:KV>6RGDF8DM9!INS_1;67R3L0M^JILJN1OP FZ&A^7VN*P4"7&C*O+(X4\,[$%MF6* M^9R:D19%D>K+>)?&MZ#IF8F-^Q*N9-L%9JJW!N4LF1\[5E.$34_>==2J^&ZS ML]W(B]&\5U^OQ(PO!DU/WI5U]8&LIH9Q>9$LU/DQ61+\)NC6F>72SF_Q(5D? MK*;)C#.8Y*5$*FV#IYY9+F13X=EVJYN5V[.T+)O=N3]17L.G)NZ8[:[KK).)\;#/;!9: ^P79]8K.RR:F.8VYK+K@J8D#JS7MGEO";)G%V5&P72F]2Y?G$"=E;JS'J=M[9*>YR> M)O$-[=!;NI[C?6$%FYZ\@-(7S1F1*P]D0X^WLJ4N7RA20=.3%^AJ*M?7A3@C M^1G6T*1*WQPFP NB\+JZZL0D2].U6$H?!/EIP_&C"&P_D,>Q> A?"%]_QA?Y M47P18+0B==OT;_$%8^NN%,WZ)ZG]25'MIU_1&OCC&B"OP:)W=$^OKB]UR]>O M%\?]Z=U_P-!N-FI+Z$HAG?B7W&']TBC.E.^H\#D*H>SBMYOV<31W/=MM21KM MU20]H_.>/Y[2?.ZDW)-H<)D2SA& M$@1&4I>RL/SE?AAY5D P1S"_%LS)9S G%6G0S.-%T31QMN&,V^TUN2H[?Y&" M]E68)].N #0[CK#(5_U# MK="K;QS[LC4Y:V#/]$-YFZ(]"/[L16D;UZL,&V"IN+O*-NY*;PC2D--EO]<@ MF7H5UWVA]O'U& Q*%8Y)TP'R*1R"JN\,QJJKNVG'GAVW.5OOKJ10MCM8D@NI MT=1]>8-7JLL\K(%YNEB/I^R8B.:.'OA9(<#A'<5_D!@+%CU/X+&88<7VY/VY MT/^[B]Q_SZ0'9'Q17R]!KFMJ1%2U4Z)G!$B/4;**,M- M,2NUTRF[.9M3\]ITI="!O4'P&,D#-4+RM[,WHD43"/<(]P]A>_P)]^YZLZY6 M2[,5[J_;:T/N5Q->ZZZIH:>*SCDKA MZ^_<>KPZFEJE>GJ,JWBRRXML?$K7_N(\X INO>*0Z)0WCF3@[>367^4KJZ)O MC/[._PJ3()/TG3A?WS9S7 =?K_SM*B[/FK--KJ6;[4WB:QVR+)^F5@3D[PCD&UL&[P:R4#S'-^/^!DB;LZ4L2>KLC=M]S)QKN5-*NP"YM@"BHK#B#.U M2*]A12$'+2(61"S1TW%7))8$NYSWY5&)G&YZ'29)>2VQ.X7$ C,GDQB'GZJ[ M?T78&?Q7Y]^A+RXV=.Q9S)[KX92Z5ST)CQ9QWH. ^T:D&ET&?3"/5B4$-RRU M Q$/N?0,-4XJ$V);4/VTI#?SRG2=SLSC?5'AH>:B@.AB.8PE.>3%0N!'X+\C M]?0V\/..AJMB22M/VT:J6V"Z0S&QA."'UY4PDB,Q@K\4%',/CJ][8(%[&)1[ MD%%1'\-/'I2OB$.*_*@@=P_"#\+/@SDU*MY8=V)&Z-KXYRY6[5^_D%<#Q=G< M^_'\*WV[6@^1&8Y6ZZ>OUGLP'%^?M:#8$_2DAR6L=_L.,@4CM/=$9:G83Y.W*7OPWSRZ*:J+>*8Q>?21G&$BPAGS[46^M6WF\$2F!M\( M:@T68^C3@_F_CEF,BH+>R8_P?G_<':L.O)!N'$4N5I+Q1"N'7"X1DBA163S( M_+H;'3-8#>Q?(._,ZA(D7XA.[7$>7Q2CR M^F&*7ZE\I(4/L L3MWAC/::KC@4^WH7)=ZXL?*+%7W>@PC,",P1\0W\S$P*VV&U;H5AY9F>L')R\GY)"L%8 8:A6,P 3^3 MR^VQ'#;[)")SW_LW>'$S9L]WMTN1GR8R"B8J:^9[&FQP4@GR>H&;D4<$6N*/ MO<0?[6CF>=Z)RC %!F099!"[F&(BWAUE.GI5=V2CMM!4?^Z3Q #L_DR88X+' M\#/;_WTFF=AM]D&4#')$?!G'H6OCW_':^(US1D!,EVW+?GY]_/5CZE&OF,47 MHEJ6*UQO8.JKG#/O7-MU-WV5-1W:EHB:G(I?K[8H,2D>UG2:[W M\&QZO6DZO>6$PRNMJMS(RM2\N0 \&V1(Y8&121$W/"^*/-$@YD#,$2GFN*U, M>P]S)&9><9U4W-%TT\HVMFTR-2*G(F2.()PXJ-+^&!$T;]!CNQ2H?1T,M;X/ M*_;4M8[2H*+8&G0<'RU]]/PX/@G>P[!\,)Z50^[B1(#CL%T3HEA:>XX*MB'# M4IU-SM-G+J!*V /'-LV +,/;%^>*^N3Y5J:4*16G\>YR1B7PC3I:CQ1BGP]5 M$!A@S5ZB2N320BSP'5G@,X-R;LT"/BW&BX.T:.&-9+*X5?1FC[)%R )!8E2. M8B$1?&>75M6Q(26 901&_782*O(FYQVHJNC9:,A"C0QK?X9V VR\,TP3NJ6? MK]CL+F0WN1XD-6DFJ4JK13)Q0EPIA!"DT\$X!L=PXM(A O)M(>9 S/%@>N\M MS,'X%#.:9(9;?#'N&:5MM:%7^S7('+#8NP"X@Q*^C6>KK'O/KLD/#D(9U?J) MB!Q[((;\3G3WU4XNT,+TX1!7;0?^0/0\Q^C[GMHW]:;]9LLVGM97@C^=Y*8; M+=-HUPC&6'5&H$N!?XO 2)K!!!)5K48$@ @@6OZM*Q% +CLK=T=KHR852LL) ME\C.<=(+""!P;5$TCI',];,8WI%K*_;>Y@R?MP;)-9<=%6@\*7M.*M$1Z+I94\@@ M#S7#41@GW# /_*2'2"8U3!:*=;8ZD_1$2Y(\>R))U1$D M&7BY$2,($A,N1IY^0R_;B4H$LQ$L>]73M5@;?'7 CW[&BI[V$WR6/9B.P=-U M![GGT+5*=*'JNVF_3%%YI4F2WTBIE^NV50@:INRD<8V%Y7NJ& MZ2ZCQ1V(#! 9?!.-=NZ&99/RLY,B[DMMIVDO&UTSGBF(D S@#4N,)#F,HJ^C MP%Y;*/?GR0O2404*33/?1&6 M8SY/'3'-$Z,#B[$R;*KK2QF$&-OW25PE!6E&J66K5/32 QM0?)#:G,!PGL6X M,_?HKU>L)?($AA@I^H.&&"EJ"O/CC&2FJ^-547,\F=U.BVW+;.3$=L!(,.LZ M1G& E>C3X+K[S&KV/K\?M;/G/[V:DC/D; M9^_0O2>V/1MOETA-AXY6QTG7DZO)5BW?*-04,LCP3@H8PS,8=_#^!'HN/G#C:UYCI P]8H4MN<63O A!#W03@_$,BY'"O6=$NP?TW\.@ MW(-LBOH81L7&_'BM:"NJ;/+E*5G-[KI4L92T/3 Q]=( -=12;SBY:6;HE3EJ+IN2ZG6X2_ MNK9_GKQJL%U5=P*5VX!=.!>6D4][$R:%X[@NF#EK1%>LD;%2R"#G-O'S8AHX M9$PC,D!D\ XR>+_?_G/)H%T?)&J;K>WB^JRY(E2FZ33Y&B0#]L=O_"=S?:=^ M5)53ZA,B:J-%=O<@E%!DVAW?9!S!-%M?=IS%-7+,-R##T4A<9I-Z:\C9*-E!+WG" F>'05+!GG9HB8>_Q2S M_[BA<]'K>?1,\]O*1&G'#X!T [X-6.,,UQ*Z/)GW.YY$W#I$&(HVHD,9M%=Y;24.AQ0+GD*W-=%/3)]M,99!-CT:0- *!1ETB MCZ!&"(W G<@OZ(U8%]B(7_G(4".) 2#QX'!PWLU4H;IP^#6NPJ-C;P% M,]Z+(K1+>]X/=7X]M*+#>QEJOL0FI;B09->=DRH0"BISXALC;R'(=( M*_J#AD@K(K+S$TF+3LU&F_&H4,47PUDYONXN$XO1")+6S8)RHZM%7YQ5W28& M-UH4$9#4SI\3B+;2L_+IU+TE%M!]-\J*A89<\B+]P#1"M%? M6(^<8!,YE!!^$'YN&9H[ X\P]3\6@HRNNP.J-$MSH8(R@032CJ-R54N+@1_I M^BR(R)T[^E!W8)M0T2&/"/*(()OH#CPBN7+Z'591,@!_ P;6'^CA8"'M6.+< MR5>59Q=:EFE*%7_02O2W+9?U185BPY,O"CE($!D@,OAZ!\FGD$%RQ5:E3"5! MR)LR2[5GU;Q>R(X@&83^DGN/=[H'6KB'0;D'G17U,43VWM>/"O*7(/P@_#Q8 M+$@[^)>NQ530"76DQX!2ZNM.S!X^N[;LQGP7-#*LF#?6@=#R=&=F6(%* TU_ M(2_)-[VG]?U*H" S'JW6^UFM]V!GOCYK!!E\Q.L90Y$)&9E-*(+I[[XX@\!7 M=_\F!;AW;KR46%=GEBMNI^1V6A=(>:7%,W^HP?U^G_Y[:G#OA:P8ZMAR(&,K MP\")YU9\SX4] $/\6D[ M>R.1YUI;R4E!_D^4[/,H3P?*5282)3!.$K <.:& M#O[(DQ!B%<0JT6.5]Q\.?":K<.U4MBX-60OW"\TV73?IG$J)D%78@%5( <<8 M7+BG?*-_E&N7KI<@%P$Z.[TY:2*&_'K==7PM[Y@HSQ54+-<;?8/!FWC#PD>; M1L\,Z"&44#1.8"QS*654(*'^'61,=P<+YL7L Y_<[A53KX= MVU=_V8$.%H+S$F_PE78+KCG68^I@8,_ .VQ@,C[+]L"'!9EKK9@!_GKDJ&9L MKCH>/"/RQKJKP^7UE,-V:%BJ-3! (S"IGCX#G^C^O&)O7A_G@6W:SB\ XS[. MX.\>8LUPYZ:Z@6M(_\_[WM T+#T^#L_5WO.*3SW#W\'WFK'\_;_@R^&9)E#: MD/W&_WF^TBCXU#WWX?]SO0WMU05%TGL&/RPHFCEZZ^#K_SE^^2<+-WX8FX"% MCWJU&UDR(.21'N\[NCJ-JT/PP;]4K_XIW\'Q!W\P'8-R#:_'-T$K+K4X5.?/2^8 M$,^>_R*)GRQ<&^"?NP[1Q$^.N=$4O4 X]30A_ZO&Q@[<"/YOLY(\*T#@]P & M@.'-_QP?&>]^!$@B")4'\(>)PB"^#^M3?-%DI-RK%7$IL2JE8 M&WRMQY*5GZ%B*393UZ2]3]IQPI$_[E>C";Z6I'*S44DWP)(I9"O%E%1O2#4Y M%YW!?WK+6"4=.WY/V$F"VYV,P9=N=N]U6I0^@6N\(. *WV=QA28I7NEK@Z$B M]/4!H_=I'.?V@%#W^LG/&YG*6E_G)&.DTBDFHVX3]1'4?B];4KK92BBVV)+; MU=2F,$Q/&X5E#>K$DZ;QU8A/9(I2659+F_I2=R<9M27"AQ(OFS82S&A,,I6Q MO&G$E^RR;A-N7%3(T\]W98'72SDU(QMI+]Y)3+T&,8$MN9%FDI:H5FJJ MSNIDC4KYPQ8W BU/WW2B\W%3%B;YJ;'4Q'$B;U>[!GPHP;QLNJJ;UI!0BX04 M[S";:7/6R8N+H"G_LJF8X=NCLI74Y;@Q]'@V+<]+M:!3)_T?]AFF)3594_:= MN 4F:T2N&Z)"G?9_[MK];$&O5V76++CKI=&1VDO8DG[9DL[G#;M>D,VI89'S M KX 0V>,0,N3D2*M5'N<48=;*5X8:L5DOLV;/'RF<#*FXJ1&*^QDLGFP/.ZOX MP$DN._!-3\?485BZ[_+QJ510,LR&TY/JW(,O<#JF7MX:2UE+K. 54DG@8Y_A M*EU@$RCXRY9=PJL1]*RYQ!MR4132^8[:3:U RY,Q+4AC3ZOVYS:NF^NIH54M M<3*L@98G(]5LF=LE5Q@J>*8AS3/5F;5,V;#EF=572B=ZZL3PI5EUF4^MNQHW M]D>PZ'TS["?EZ8;G>4ZB)WBW M"KM_.E)DNNPY>5>K216=Q@=K.K_I6RN%.1TI,V=KM>5PDIQ6MAUOU-QZPRR] M4MC3EGB_/V>S5*$AD_G&P&Q.AM5LHZ9PIRU;K:FVT)M4!=_@ S)3)4U1G=04 M_K3E/.W2O2&>,"1]T%7L87::<9B5(IRV3*7+D^)H2#*X(7!DFO6[+4%;*01^ MYJ&UF4]6EE1"(JN2N^2938^K@:;$F3XEG&DZMW!GN*&U&\0ZX8H-T'M@%Y\T M7:Q3G+[*SATIV>V9Q603G_9'H"EUVI0=5!*3,9F9XV#S$#9Q-2UF"H FSRQ4 MIC6T^>5 G>-&/]UNZU0SN\@ FCXS4^EZ;V3::@N?QAF=,-E-+MYM@J9GIDHO MD]7\,C/LRF0\/U@Y\K#>;(.F9^:*X9++N>_KQ6FA-DZJ?%\LFPQ@_S.3E=QP M;(.4BU.IT>R,J\DTNTGXH.F9V&^%.?*609V9+;BQ7 M\4U:ZN+)8G=1QBO)NI8"G'IFMB:.I>/;=D+!*^VN86R'3=\9!TU/8#W6YYFL M(:TS.%G*=P7;T#K-:=#T!-@KL]D;:- 2] MILKQ_D1BQ5%YV\B-@K8GR);R_LI]&8!V\E4YZ[^:__-L4Z!9L?.Y(#B>Q"* M]KVQ&-@VJN_9^Q^$QDWPDV?VSY%#;-?FU+[TG/V+[3Z0"%70JTX[8!GM?;'< M3X&.I#.6^#QG+!O-(X!0@%" U@!: X@)$0H0 M"A *$ H0"A *$ H0"HB?1#0#]CYM!+B?./6]1P"@X+N/P/?N/ON3N^T]XL\: M@7?>[8BNA_P3PY4_8P?\8\#DC<9D8)OPA__]0?_XZ/@P/]G;W[%_Y_AO5H.D4=>(5%6SG\[)A&_1G4/RRK20_@Y%NQ##R$"\C0=1-T+FW3I$'WI9?8Y']:&'\'-ZBGDJT3;U4U\E=&IN?ZWJ#G4C@KO&KJPH 0R2M!:^LA:"FN2H(6$ MW!]_X!S5T.*&A58'6AUG3]<\U;!T#2V/3UD>_$_B]KD7K[@\RK85W 9T;-,$ MKWF]58*,P0O7>^^[I %($H E$$H@BT+MZQ+@;JW#@Y<4'KXMNOBWT) M!;0PKN*9>9R% 1,Q X'A77%EW-9G$]F5$7IC'F=EZ O?\#;O=="* (+OR%QDK@:24:K_]>VLSZ]SJ$\"'A3GJDZ;JNI5A SH[Q;7A'EH\W5"J[L_W@T:E8 V>/D@* M )BT9W/;@KFQGSWL[".:97';QON&,65=3;"(4GQ(/R_(DBNGWU%SX2U5%49" MC3>J+M.39_E-CI'GGM_)!2E$?_PF>8REF%O46_D*;$7>&1P&5T>++S0;1J;48;+#Q^+:-Y3VJ5Q="X4ODO.&I@^G,^J[<#! M%#W/,?I^D+"T:9=MZ^BP,;=3L&>X*=5>%'I&I:7)_M;@EQY>J2DVY";FQV^" MPPB>>!1N0OO^E^_[%U$41F$=0Z@SF^FM3MF?2'I#QN-9/UWW:N%>!]T M<)Z=R_J\QR7-3"^^=& 2<2ZL(4E3&"M<*H!T5YA ^S7:KZ.T7U^=("*QQ\YL MG%5;E59!,A9#1F&FO7QS'%0;P'_\%C""9C&2N$FU:\0IB%,0IUS@E*<;S575 MT')6,CPZN&,60VI5RS*9IZ?L.+$T M:X+J];*UR#'+T)Y0&7);:4J+XGA=2^69Q#@+O0,$^^,WBV,L3F$X@Z3+9S%+ M> /]\9@EO!:.F.4]S'(>Q#M^H9D1LW46ZS$ [L"ISQ(EU:U]N+#TS?B%7/>4 MU(7 "GBKJ]75/2H[&2;(ZR;6*4VC*D.2/WP3+ M8"SXCR;_6('^?0$87[C"LTE)-7[]$*JU4CQS-_/)*GK44KN/U?K<NM M+X5&;G7'UE1W?"VQ0&CX<",VQ2K>3BHULSXEN)H>< $;KG^"_ ]2"[<+$G@$ M+KAYMO@'XX*+(0'B)&=[\EA83"OQ>56JY34QKWTF(RB-J3$;2OATNDA2\\% M74U3*>A(@(?]MV6$:-8P_@@YO7(HT\'4B#9AXOBJ:)LPUGW&ZOR579 MN>0'N#:&MTLWHW1+OB@71#_AM?(CE:Y!#,/S^3]C^.Z3(R1M"[RP"Z?:'L8. M2>ACN[3A=QGU^*TO1G[<'X!.]O_^W.$)3I5A^+UG@+XU] %HZAF7O0V#VCA. M%;<$*[4'LU;.*&6SV_%(8>'1/XLQ_"U]#2AP,/(W'A!MH:B!J[M!_XJPZL2B M0<^JQ;FD;GK=%CV24K99 X3%_/A-80)SFFKA7@GK6V,311_<0 6\Q%)AR6W$ M=4OU\4TB*2M3>S R\R+ $O?:YG^G4$)[/^*7B'DA[B>:X2/,DDVZVP&^+'*X MOZPUZ]5&%T]T5H!98)3#^6T:40NB%D0M=Q\<\1%GZ4<8ID;YG#XPW;2D#[2! MO&%+\8X+'1SR> 'O9_-*?SF8 M;E< !ARZ>H7VUP1I^'J;X=W']#?2^7T]Z>>3 MHBM5ELE/F:[^UP-9=V+&8!I9_J=AC>B,.%([>F1/EY[ M\ZE"U;&'AE>TW;-WGS:)9JW?X"OXIMILIJ?::&-,5PJOO"F&YZ[ %7DQ@"XF M(,:),N.\T0RYR#=+?]*FJGEV*,TT5G.3V>*X*M8 WS /QS<(6I&"UM<=ZU\$ M1#E+]=<+CRSC\2+CZNV29^4=N %_QLD]VH#1!HQ8(@I'_AL![2CB_%F!47E\DM/D@+:[6E51C4-(*,[D) M 08=_8^FF/ML34W8ZR('4 B-C] M[KCP[9("/D)*YE.5:7? IQE*7C2EG;2=:TT>(0(I"4 @@4#"/:0 W%R3GC7X M?,<=9?9Z7NII6F*J-VI3C!&H. ;Y:D;=D A$$$@XN=!Q%,U4>N!MM M*+-8:2!% TC1@'LH&O#ET'"#F@'O%?E<(3'4)AM!K.=R_?@*4%IVMT%!.URD M.YID^(\-\X:8XCR?\-E<@/==SNU1&*(W=D\(\7 MX.'FYZM^OZVX.F=EI$85])P-/QW%*5),@)PZ(*A#4.JPX7HWVCE#,KC<(]Q45_#!!7!$\;305EA3%:6VCRB=6"I<3$%.0 MH@)$$!.DN'ND^"#A&4MX4Z=8JBQ$3E\PTWF>2-N3=23ZENL!+F"'T MXU1)K;2R.EC%,F)M5DZF:!\S<(4!.AZ/,BD_VQ2P;!78,7_P[_AR&W$L0U,C_TWA_Q%GPMV$_UX=ZQ#4N>>X:!I. MQWK"!8+/2&(&RISQ3PO >3MP/[6!O=84X*=#M8!B34U\EZ=ZJ&1BB=YVDZQ, MI3K?:GFC'+_(I:'"$?^4/(:?K%D$WHROY7*"9P3/;I7.\ 5HYKCS1JDT7W#2 M2MT*JM8WXH#':/89&1*$5W\DKWY=;L07<)C$Z1NG(.X,:C$2JAH0,QV5$1"' MD:H+1%\@&/1=,"B\,EY,IX;[BD#15,9>-K2\8"YK"XQ I,H#@2 "0:&$H,^L M$O$%F*35J\7Y E@EJ5=*KV)B@Y\([0W&) :%;=AX,AI/T@25""H15 H/*MVZ M,,57>$#6C76<5WJRN -BO=P?R<7)9(J1B!2R^)0\DQ^ 0T'2"<&A4":@A B- MDKEB,S5<)T<4YWE V!F%R7;FVVJD<,;M$U=^ !0%62P$BCXIH^4+0(3+RZW2 M7)EJ5'F4 JOJ,+;=Q;%*@Y)D7F-ET2ERRXZZ69L\XZ6'I@N M=<]U$*7@4EX!E<2$4@8S/KV5\I/Z2'*E?B>I;A"%4,L.-LJD;M7,BR3HDW,] M]XHXK]5)[AQNWER);&894/]T_+D43<7PT'HV+!L14W!=6QM[+GJGCG7=UKM6 M8:A%C9ECM/[8:KHCFF_VFXBHB;_^IJDHQU#?!:$(,WZY^']C )FAJ;VT M,6"D]9BP+I50L[O85 1$"I93P MT3C/1),T01:"+ 19O@19GD\?R5;+\;I:8PS*LR5OW]>7=C<1/I2IV6.^VJ$[ M#1'D0+\WG;:;E(?U%Y0DDD)]A1/1>.*YHL,$9@C,$)BY&.J#6ZI\X3Y'W6=P4H8UB6!7?$3QK=)[2*8EO1)OV7F=>9""Q80J^CGB:OI" MK,]TG1OTW(+7R&0H[CW)%L^U=_(\E$=WIZ#%8[5+9O*E%)Z.Z45 M15XK*NO6%,%*XJ^_DU$^=<,P#N&I[RJPWQCWU!.:76"G'4UO-PV=UEI*B#&M M1RF-J;WN9K!%CA(46!Z:Y)?:PL>U+2 002#BYZD+3^05 M%3\L]";/NOV?.O7]I^I"?U#.IO(&5Y,\8R,K5J;4=A1L.9!"$I^2-_ =P,!/ M$B!@\"$) M2Z4:WP0[8IM?N>5]@/JY5-[4\*0?PI) RD5-G)#;M+J5R=C.=3?4_4Z[OLZOA MFNW/8J(GFPUQK,F>VO+#;J^J^'_WM10RE@DG[*"UMB:1Y2&2 1\+"7JGJ9 _ M.JOXSWT"),3__NC#B9WJ$_]O5X/OU@8*'.IJSWLXPM]%V)-^AFFV)Q0"N7-+1VL M*@UKO&PBQ$J@YJ[7DI;N%;%^-'.2+(0;Z $7S<><2L8"P]I( I,Q*_?+)C<2 MIHB9DD^)_SOE)2+]"<"$S!-Q/UD-?P(M+"576FY5'(BTE2]UXB4C:\X%!"TH MV^&ZH";80K"%8,O=)TG\B19_@BY4(YU:%NEA1=_1#3DUM;5&=K;H8UYRUR0[\'"=WOR@V1YO-X# MZT\;J'4[(QO&M3C/%<#(FCDW.6;=!(3&XF;:2>S:NT9S%$^@+ XH(\F9$7)F MY+N""TG%>#>N/-7W:[NRMORTK6;%C#P:2I5%E9UL!00KB;_^CM.7#;_N E9^ M#E/]T!2*9]7T/Y*O>DX5.MV<.-6Y>B,[]T!N+&^FB!&2Y"06$;'?' WN-M_A MCX'@R6ZZ?&&:GZ3*-I5)<.FVM$C4APDL$%%. P$" @3W 0AU+7#5<+A3Z"A M/Q[VFYP@.M1NL1-J99,=\BT?&AC4(S=)W?(D!4$&@@P_3T7XE(R"/P$#-C9* M342]S.JK1HXJ"YWU5!M@?QPIW4!*-Y#2#?>> ? GF*!MZC=\/6&PYM#]K=1]L&@FMJMYGJ<6M &NQO(&ZD]P/Y MW&LAFKK2&?J?[XK/ARLOI0;:4M M\BS@5!.\45B[I8FX8QIZEH^[#&-CP$E\.\ AO!4JWOJZ$/^S'&%+VRK8E R: MBBT'5+M4I7.5^09QQ&=$\8D()B*8P$08PO_/@H2>L90NS^:*U*K8[4RU78OG M^TT$$I\2XBQ8N\6+,;U>6T('$U6BWETI-%-8\-9GLWXS))F=8^;38N93*?;K?J*!O_7WXDD$TW> M##5(L0!2+.!'0\;'9AX\R^=U;3A9\!-6H7I5A;7[.ZI73&(_)+8RDQV J@#88 %5-/CT"'RYV!GT1K0 >^$?D8;8 MRI",29)U_.."@R\&0Y2-8OT^,%1]TCJP$]1C,I=ZC%,T&\!6KN!0D[[ M0/V?]R00%#@Y![OHKVFZ\1FOY/-2V1$YND)7J89IZ9: )$P2*KI<*LJD+FO7 M$%8B$N9'@\G=!N2OXLA'::OI2AZXW75I37F UNQ:K3<9];"VB@+W-!V/4E>R M\@F8$# A8'+O>@I\^>GX"XJ$O(K.)T2Q_U3B/MGKLUDWY79SV)OK'F=0 MTY4ZE+=Y[!] $6\FRG')*$,E;E58AQR;_\FO3X[;?U#0^\-A(3MBM*JXI;=4 M9L>VREQO;W9[&!90@)R.LBP5I>CDMSZ"+VXAD30_8&XML8/U3O,#2?9LV"(* M]Q7^_O/H!/ZQ[C//@9_4:Z[%9'?>-I;CLA@;%I(95FSL1MGF*)Y"@?!$E$MP M)%>7I/<3@"+).1_6J98DV.;TK R2TP1-"60@<3P['>! M)L*%85,3PIQX\%K^*?6+W?BV-&E07"\VL(U,LKE<;A#_))$ED4A>.A?NE'^( M:">@$G;1_B4)"!\ICN/3:HS?)RMS<9=L;>)\KS.>YK$X1DD(\6B"_3;RF. ) MP9.[QI-/;ROP3FPI]NRD-=J/%F(FV\J7C+;14?K8"X'R$'@VFJ*)'X* "P&7 M,(#+I[0F>">@Z$766*U:34LO=_497>[4M[.T#RB?T:6 ( JI0D 0)8SM#=Z) M*WP2K..452OI7II26_VT56^-!8PKG]'I@. *J5/PKRK- MS5:DM9C6ERD+S#?8)X*R-7@^FN2>WLO-RMUG,=QH,Z 4]J"=S["0H" M'@0\WM/%X"7H<%@S92X5GM$7R?Y:;)=-?;IH(NCXC$8&A'&^)>-\78N"E[9[ M89 VDORDOI- 2JUWQ%2+Z_XS. 83W">]_BV.*(>P \!+KL[&D.,$'1[I?8ME5-9\2$S5%H?)4*9^L4NZBV?0#6/0K!?;=UQS M#I+86': "E=JL02F@U?H3E,"OSZ?=FS9*K!C_O6_X\MMQ+$,38W\-X7_1^3Z MW<2Z7NW^%]2YY[AH&D['>L(/@8\P8C;+G'%9"_BUE$$;V&M- 7XJ3@LHUM3$ M=\%9.5>@JY9/56:;3*,DT@UMOT_W&VX>")#*GQ)[)^EXKSLX\,580("0 .$G M!OV_ @8UD)AP;J=,Q78Y;I#?Q+)5:XI@\#/R"(AJ0S@ZA-D(7\"'8V,WFO:9 M54>*;?IN/:7*XWT+\^%G)#@0=82H(P2\0@U>X54A^*G@9<94?"S6<]-&7,ER MY4%Z@Z#K4Y(U"'81["+8=:]9(L^ZG[\ S'0W5U_:.NA1&MVG7*D^8K4\=@OY M?2UX!A78)B4E")P1./L.<';KDA1? &&>M[.=H1;3*%FI@PY+I8$W]O4Q4L$B M/!4L?@* /5GA@@#8?>7N? 6,E9*R5EX+&8K.YL2%+"Y9)M'$,$8*9H2D8,9/ MP+ G"VH0#/NL-*0O0!]KYC5UIIZ82;U:K+[D.+4WZ/OI ?3K[,#[*M&1E@W9 M5$!$=E#OE"Q0L #QF8B)1_T_T-+>0ZKU9QMH#X" @4"@6M[8 '>-!&^HD2XX MH_HDK,'Y5DS8EZQ<3I+DH0[F8.]*P!7>46 =TZ7NN0ZB%%S**^#1F,P&.6OK M,N)JZ:TUMM*9#^I0=8FCW"*6C=+\91NF>^"KT&LI@;?HB_GQ.0K]#T&=C] _ M[AQRWEQM;&89<+$=?RY%4S$\M)X-RT;$%%S7UL:>B]ZI8UTW"*^@U+JY'"L5 MJF"(=:??6[IVS9IK4X12B;_^IKEH(GF?[9N)] ^9]']C+'R< \DJL] <:9=@ MDVXWE2]V%S>6V)WX=--V)7%+<9/QPDM-N5&#Q;R0A-I^(II,HC8%-VQ[0J3V M5_,1D=HAD-H?#A6AD+0]J[VE)S*SDO)2W+#-WI#->P)"%Y0APT=9CH[R5UJS M$G0AZ$+0Y9/0Y?G$EIR]SRYE.%1?U>1VNEULY=J-]W4^N072N*L%7_($JZS3 M:GF_V"Q3TP*#/0^X'0H=C:=2T52*0 V!&@(U7P8U3R2=)$!COMGM:YZ4GTX4 M35N,[=@D?!C3I\!8:*7[HD@72[OAI*_8P\8&8PSWU]^I1#3.0HRA+T]]$XSY MN'R2;XXQ0>((P9C;Y(74L@69=;([CMI-^[$5M92GB>3[^B'< FDV ]D>SH4= MT#,+E_)V>8/N5WV[B4?E)2B*0;83J0ESJXR/;XXR06H'09DSE*E,6O-J/[O9 MZEQ^MN&ZRQK/=\+G4JE-7+8XSN?SE&PG]&2EJ94W+3_$BO(S^'@TQ5!1+OEB M$Y5_X2=_%$.?K25*6=$FN_/=\XBI_5^."43TZSG[PR>K $3JQPR'IA3LN\X, M1&0%U;>1S1U4PE*/^R#4"3%CL3"<'WV5@&I:8S< M4Q ;VT#68_($/OBW;&SDG1.\98H]R('?1[Q'1(BD_C<2_!<1X8*""WD;.Z-3 M(!YB!IBX\)M?3.+T'<;VXY>6@YU-OVU@R*ZV!NCN#^Z+E\.UEK]IJ(J@K0(_ M!J_#QG\E$S=:H$<(P)R6XS]R9&8CD?'?G7KFJGJ"_H9< 46#\6"/!E]!$$%0 MB^ A@R00Y/_C[I1?LT,?DOH:!64L'D9)GE;'5#(U8L<3:L0F>&Z4X@ WXA,T MQ:92"8I.\7_Y3_T8JEUPY'/0"B>:J=?:]4HQ*W3$;*0'_VU%,O5??F"ZTLE^ M)"Q^DD3R*7_^7NT._+BXCM NY2KW7'J5H#OY?>(A_FF6DGHN@>4;P M1.]U!48IH *XX9D1S8WY$:M.N)$\H?D1X'AY#/AQ/!&?!.27C_EJ(-W*-!1^ M+V6$QH*6J59B;&U&.%WMXA@H:22QZ.K'7!L*B,,[;D)6N.U8D5NB6K.6)&U..1H,R) M#;DGL))FMQ++-=>JR35AQ%Z.I)A,<]R2Q)G>DS-*O9TOR=1FE+H<"37W18);V)2>7^YSQ9U(6=6D $ M&8G"?*G.P1ZRTY6=4I&6_"2VR^AZ';A:TEJEXNX2#KVR5=9V>CA=CF=K2F[R MF]@B5\@9D*'B5_8*V&_S]6F:BHL9U6CONB#>D(>XU^PEHU@I5S=C^;:>;U5V M^4*UD*RRN.[,Q="A*\;RZU(V*=']>;NQRUMP[V*_[\70DF4)&FVC78/:R5@$R1)CS?+B3D/^]"MLF*Q-9NMJ?.;H\G*[E5G-2,SD MS8BYLEK=&L-9C6H"2"MJ[M3LR2*^:S21F7\Q-)U+Z;G5/E>0VC5!2JX'0M.; MP+M>60*C7*I1#;X\HS+"#EKX%3#I%N'0*TL@#3KFA.G-9%WKBF9\*I7G<%.B MH1<,,]G%ICDQ'E?T]H QS#10M/06SO7*:I7K'1HD3,ZS>BPM;E?\;E OF'#HE84M="QSOFB/6 G48LMDNHPWL^:089@K"YLVMFIOU](&HL;G5QFCSO:ZY0T:>@%$ M5B??TQMFQM)[.957<^65;J[@!*[M@8'+-];-6H9:-&G)5JK=0K6R04,O[EKM MK]U\FYUE*2!532K7[K6V-I2"5[9+E4Y0M6U2$O2>.THLZIR8R:PW(_8*Q];% M/9L?LT"19(^J;F1)7(IE*#&O;!=>20K]W-2AQ;K56;V^'L.A5[8+DUD- M%&U"9:7>SI"I7'Q1S_3AT"M[8"-/I%EOF9WI&M JAI>FAL4%'GJQ!_HQN2MU M$LNB%!LN)Y-=RBSU34B!*WM ZQ>,Z02T^U1^O.B:U#!ATAX<>F4/Q.*%RGPP MG+ BIZ;[FMYMINR!/FU*_;V5EBO.&N8913\I&"\[URL+66,@EV+X^Q G39'B2NKQ?>H;?(4M^\)O:[+#9*QS2AQA;EK[-(N#%K] M@KX;%0T]H9CM?A+>]XO>#$ -"L[$E84M]O?RJMM;.A18]"VSLAPQ^@X/O=#%/&/2'>>E!2WU MDJ.$4T[R:@9*[L1)&O^+\5Y+Y12>>"S>< MF<1G-[?@#2>&M3G8!8?/,>3C_NT[.S:02"^Z&XZ_RV/',CP7_!MY'F[E!/J# MJ$?\#5&/D[_HW3$@]BL7); !\8,OUN>'K\NS9?[)NGS1NL"9/9N=01;F:Q:& M_L4\V^&#K L!,K(N!,@^:V%>+HUP6*'7:<=?FHSSQ]'8F^JF'YV9$SU2-IU8\-S3J^&7_$1GI)&?^D\^^7_Y(]\.(>H-\*JQ9^N-?UC=>;)T^>%[NYQ?+2[JX!-Z*9BK4 $?GL M2$/$M5"VZRD-O@?_M>%7OR(55_T%9W4Z('$/5DKX^> %G^I='$QZT0%Y_P>/ M/K>"+.3.(F;.BN4X5XX3,1NG5N#Y[5K4M'+5]-:-LIW=C'"N$LU'$ZE$E.'C MMSAH>'-SD' LX=B;<"S]@&/ID:AT2E1%, R*:]NS7F]+;VKV'Y\!4@HO2_(N'_][L$@V71NT3R+?.T4IIIH?, M\\!0AUK'A2H":1$[.V")#^ZA$Y8?IWL0M?QUMLH7^L7"3[0G;9GP>!._'G]O MHS$I&\7Z[0-+#N)*Y@@K]2.J7!S9SEP>V;X&V8EJTQ.4Q70FT:QH.,7RABJ. MA1%.VTTDF6CREAH6P26"2P27[EYY)]6M,KQ_398H;C8$X<,7M=,0A'9"AHO$$'XVG;E+1BSC: M"+00:+E/Y>]5T")5M:67;90V4IV?V7O)SEAS5X#0 M4X+LIS?)2FGBM\?/?9 M/&=M\I"OSP9PH13- !'S%)M$/D#X24&Y/4O;6FLHAW2\NYK<\_OG. 7##3-? MD._P>:A=+(]%MK-G(NT8**F[,V"+6]0D'9SDXA6+>NZ,Y,M:MS%[4X_4_BUB X0W#F6%:S9@(9U#J#$5'$U_D0]JV:Y5Y$/X1MB[+IY& YA#E+G__Z*78LQ Z^ S*%:12J6B2O4EW7>(Q(YQ^QYS^B9K.QW ZJ#E=:[U(='4X MWZS7YB:4(V%.Y[ )Q7-1FGFNQ^W=IY-DP=*&Y)9]QY:I1N0%:MFWQU\0)U:( MM)]P[9OO'3/_;CK2&9,+IBJQ^7+)H ?7V85". M72+)1=G$JSO2"I<"WD"G M>ARTX"C'68$TU/R<9T RC\*DR82>AB0CX+LY>X[0D+/LK.6-W8EG"(H"J7VU M+@:W-_>9;&EDBJN!U$KJ8HLV*-QS&:I&+)6*LJE+U8CX>@AH$-!XX=S$?3E" M<-X+Q#IT<'CIN?^"LS0BUO)#PT#AVL5WH#X0LXF<<0H]/).=>K^JZ&WM^U,R M1AMJG?5)%M)CC7LA.L_9]O,X9XKE>;(O]GA9Z\1M+6LGA5$N)\ SM;P__+%=&1JR^9/*O)[!P(\7!N+ MA&WOR(YOSV0;I&4'J.=X< 4N<]ETNSWL,RFQG+.UG& ;H#R=CN()/UV59Y@H MQSUWAI/8\(3Q">.'1FMZ->-G]36HVP.U+WJQ)&?EZ@F3*6/&QS5MV7@R&D\^ M5V;QOCP42)M$'@I3%(%X+8@L26_#+U1E7/*D'S#E;>SV8UH;N=R+H72Z\38TZ85_9-Q,K8KQ--4N_KY11R MMXY?US;F0/4.EV"%.@M8>9"+(U"O ;)MPF^=B#6)U#.Q=+=(_#@A4FG"M9.^ MMSEW\;IWFK=ZULP$.<%10Q,1\WL5N#-++9IK$!1RAN#9]L:.IFH0&JZ68+!V MI4V%+7H;:M?+%UIFGZ,'&0B=2>SCX?AHDK[,R2?57@@F$$P(GPKU09BP6IB, MG(N5.J+6&HCQK"(S<4I F!#49:'IQ/>IRP*53;_Q$UIKJ"0=%29'\+5/Y&K;QN>>C=7IUQUP!>9HJ"W>SICZ:*<5H:8 MJU'1E23R ]UU>L\],/<]$.4.U)[0T_ '9.ICJKS)=OQJ,A&?"F$HPE"79+HO MAT1F)IM3$($_$[<#,5#";*#^O([(*IXCYA]4-C:)S7=-#;84+66[]-(6TPEV,Z)Q4= X%>635#1!QTD. @&([PH0W\R/_SY\ M>/+P;E^MRWJ>UI>ZO!IW!WJ^N:L##!2<'[.+7\E*N%L? !R)WB%H+TP< =_0 M4 J_)/CR".=W49T.V5F/389B[A*" (0!/ARY>A/$<#:S.C.#QZPGIG;F[ MC16T5(_R^K) 31EU*>2G(QJ7$DWQ\2A+W5('"CU<$/XG_'\/2M"?\K_9RLX$ MM9O.2_D>X]5YNN7P7!/Q/W+]1)E4,DK%/UH)^M(#O6 I:^JA1)M?AL1"_C+B M#_J^_J!O%#@/'Z!]MD(3L/"A$470?^+@]G[2W*-'BK39[;M;RN,S:GW$)Z3- M II[+"Y*DDA$&?Z6H;!PP0'A;\+?8558_I"_^QNF6!K56D.Q9Z9ZB5%!,)M5 M ?&WK\EPB:L=P+^3.^>8&K24=R@4&/F'9BJ&A^;@UZ(%*OP)OA%P_AF-R(IB M>^"J*J1XD/*F&S$T&8.#1EK4A$I5"M>V^]X6XC?HEP]'2$X MHL5# _-)?%TDFG-7FB<]:E=)&:M6LD.-E.:(QI5X$U&:I#@1'"$X\O4X\MF1 MQK?B2,QKIQIJHCJ4ZK%LQHN/U75=%!".<#Z./%O/^[[<58?P:\0&:V!Z'U=C M(%Q\?@=>'XSHE-^,\LX3]H]$7CXH?#P_96H2WQX4G\2 M]L"S%\(H+]+#5GQH[/A-W9TBH$ G[KAD-/5\-9*[=W/]9_S@"1N M@O58MI=IUAELP4P0L2!EDHO%$/)ID+SUJ]^I0>YWNYT&JHMZB3^A]JN8$ MJA\<=B/-+UQ(<@]JWM>:GY^:;4LL[<_2Y%Z)MMDS1'B MT]GF]2,&:<8E8X. M5[(F2=U$:@VF(X8*W'4L'>4YGF2>$<0@B'%7*MK-$".^'77YE$"GJ$5<*KJ+ M66-24#!BH*ZET52UH_*1='F*I\&,= M@M?.U%?=2GG9YQ)4?;T!I>*VTFGO!#135#,#%Y!/,[H8>X@AF$ 2J&C M0+@AAN3M?$Y_L3"3@+C""!M\'S;XWOX=I(Q$)H:U<2(3VUI$-',-'.+:";=\ M#=?^^MYE;YYXW0][:>(-(-O\?K9YN.S'%RMB>[8R0V?NK4E$0=.4)5=SX:[_1.4@-!K\7>@%X2>AF&)V7UK[8'L L(:WX0U[E+K.(2K M&[8%2:HZ.=M:M&5<%_D@3^L3*#O4CG7XW 8*^N_UR'5SF\W6\EXK)V5J/9-= M5:J9!3\=,0F_O SUA!YRKXX' 3X.IYY&7 ME3B[A5'?1R-*031?WH@!0BULB ME0Y_@NOKN+;G[P_-1%=,;>"0&LK?T78C#7WN-N'PP@QK!*S=0(P-L5$\L/45 M")P*4MS.)<=EJ:[D\Z8ZEEAW R&0\ROU46PRFDJQY&P*X6K"U9^KX[R'JQ?% M>GR_4W%GQTZ_6:G*AZ;?/7)6_"0JVR<.36L"I16:+CS> F4I_)F MQ.!ZQ#0535TI)$J\1@0*"!2$43-Z%Q30C=HP)Y9X3:2E!*O.F4T]O1$0%* F M6/%HDKZ?DPIOR32QP4+63)1""=\LAE;/M@P#?=;@0MK <9&/IR&V,M_4O_/- M3+OP4^ 'FH2?[.@Y.'1EHQCP<-%L>V-'4S79ON[R'BWRTSDWLA6J-TVI<2NU M&:?YYHA)^5VP6):*4O2S39N)OX> PAV#PBNBQ-_4]X%!P_=S((6@)6:B$1.X M. ,%G;>0?5!1B0^$'"8/#]'N\73XMU<\TIZCF+]).8NJ&<4OFY23CE $B$)$M'L$H@]1=L+D MT7A;3=>;'QL-%T/<00;+?2%,N E*RCV&H[)7\8 R#ZKD/%G;,<%E)J-E-3<6 MO7W"%5AV"5QG.F+]:K!4-)5*1JGX/9>#?=.>^'*Y3G")X-)]IPI]#"Y-V&19 M&O9W98J>KR:ZR,F#O2,@7.+^^IN-\JEXE&*>M=)"?RCK/4;&A;[YB:6^0D^E M< ,2.:82DD2%^],.B/^(,!1AJ \I/Q96K]'C6F,3S91-A3B-PB.ZOU%B8)BL MGIN4# O7YB:[]9OOUM";G"\M659#-KNI.I&EK*GH8*YB+186W,8SV08S*** M_8-.I=R!- K7_OG>F>O?+8)P2*2H3XY\G\'LWG8M1;_BE),+&ICS_49!]P:M M33,OV1M&V8Q8QC^>RR;I:)*G2.H$@0 " ??AK'\S!,1W@]5B7C"ZXBZ5E91& M7&",KH @ !ANE*%QX=@<:T#?"NA\% M;)^NVS0.C(NQ33!5_PM@*N IM!.K735!#=NFF-GTA%H][FWK%E1X6)P=P49I M^O*D[OUD1H1?M2&\?9^\_>E*RQ_P=GJNT^7L7I^+[9G(N&TO/3#&F+=15]MX ME$H^R]O?T-?SU%%AK^@$@G*?X:MEU 6.-.6..[*B,=JZJ9%B[R M>N86N*)W,+41+;:IO"SVFH-Q)]D:M09[J'?@,J_Q:)RBHVSRLNK'FU2/!=Q3 M!GCQ1/ 7:A]I;X?VI5\+1 5@(8\-<.Y;05K;-W6J$$N*6%(A\9*<%2]J@650 MH*<^:1U9\J%A]5S&]EB/EY(E^))2V6CH@MH:KR2K.6)Q[=9X-,7<,C!$&)PP M^'TR^.=5)WLO@T]CQ07%5DNROFKQV5V-4<9288,8'/7)H=]Y&..5*DNX?"C' M JXV4("VAGH+3MH$6V KFE_I#"LR$6M)"KH2\X^8?]^Z$"SB]+K/Z&* -<* MD QGY;%:SJ @P/%=R\:^$CBH MC5/:I*I@(G(%;[4H&>-F5Q 0<" %C(LFFH(_>E^I9F*MI2-J#"M0P< M;Q&X](9E3F,NL!=P-<;?M6$QJ400,@J1T@*?K&VUCDQ?GU0@RW<@QVN)R4D7*%@4PIO*UPK+J%NKK3DI N(+Z+$49 MBHVFDI>]M;]9TM6+2IQF*C9 +9K^ 5<#__5/I,[Y#1E0$V[T!^K+O8;T-=WO M7(F&Y'"0'(YP:%8(_M#_BR>^:P''M37%!2IN=F"J#[\X&]F U+,@7OK[L>+,F!7E;!,! M X>KB%-L(IKB+S/$OGV7JY=K_5U3JR*R&QD#>%/<(=.:1)9XC8@#[7LE@H3 MD/W.&"PXH_KD''1;1;>L91QY*^7E>6%NJ'.^*WV-6G8%0_O:H+GB!042:1BE*)[Y[S M]:$J5"06434'[0G-]( :09W:Y2 UG[BR[L-.#3\%OK]]&V;="IJRONF:U9RE MY\;Y]2/C7ZMSZ\'CZS8Z.:(6"84672FE?[ MVY@D_.,Z2B!J[#S\2B=>C:1 MY;M["JHT7@LSJ_[G5V;?/?\TP.4!"I9]>P59I M.]RS2G^Z$Q=29=QKS8I.B878BJO@0VCEZ'@TQ3_GU/A6'E$"(@1$P@V5ZRYUZ1M\3<;C0XSX+0^Z!2O> MPV&G85@L\UM3Y2NZDA-'&^&_<&VLG\5_6%_XEXN*W-[@->:>XVJ3W3GE'LW< M_^7H;:1?/_T/GZP"4"N?AW/MS$!$5A1K 1^[0TERIN7"^\LV_-K$O7^FMFQ$ MEK+M(M^0.P,.0 HH=IG*+JIUZY_!A8,<%WZ!RZO\^L 7>)JTBF58]F^HY8^I M!/7J3:%JZ[__ _\YWL4 LHV89O;OAVO%H$<>6(;ZWYNPP<,EH=D#(QRY@$V> MS1K_^U_GDS\Q<>Q(#6SSG+W5S-<<:5O.OZ+0[L"?@Q>C(W_2B9NM%2/ (HY+.!"A]\!7D/=[N 7)5!!AT^2!WL4_DU>_4A MJ:]1\&-H<&%^/ JU=KU2S H=,1OIP7];D4S]EY_!7NED?:"0 ML7E8JW?$-B3FV16Y8DVH98I"I=V!'ZMBK=,>T7_Y! K!R^$9^^_2J4<>O.IQ MYI'3U/&[^H9MS5O Z2@?9>O9'E5>%0M4>REW MENT]S;-J\Z\(@&;Z$M["M3UPNUWS-!GCOR*GDIY!J:C=;43@57F=.1=G/?BO M#3GR5Z3BJK]PK$1SG8CCC1U-U60;U;#Z!\1: Z") F,714(1=_:BJ7]G?$&* M/\7__4]XV7)I[")+"RL@D0VZ.;P (K +/S@NP-_@I_A_32P[8@// 5'\Y=(O M>.'_&,.\#?"WJJ>@H T< M]YK2EP5JX54>#K67!G.:A> YI61MY!"D6*C@&' M.M$($O=I>28O9,>?-_(ZP3NVD>CV[X>^3=L03)Q9I*LA,ATN_X4O#UXQF 2\ MZ,'+^:7O'2#[GSP'Z10V@"HJ*H3O+"!,P9D"969"<37=!6]@&/#+&?S%OPJ^ MB1Q9(UJ[.X2/Q]>*HMH4?HPPLO3&!N0@ST4R'ZY*%#+38H'JYJ)=A%[$\FS- M<=%$ETA#1D-LX*!VARX:<_H>#Y]:<)(F4E\B$UD);OKPE56 3L7#VXP]S5"= ML\G[\P[6!;GU3BN*%QO?5C,G-EQS&P[QL'ZE1N#B0)%\N/[1 +07'KW3:9+P MBR-9'LY2-AP+W=B#KX'N ^<9V:!-9*,3O+@;P1*@.T(&4?U@(+[1<1(J_&CO M(E=W6[ AG8 6T0@PX0X!D._,:?20@HN7'9(T>& JO[X&POA#YUP-D#:GV>6OT;\,UT2:0RJ8K M0*W>0T'S:0."FP(W9<2,T+/[U\H/^%3F]+(0C_VT_A=YI&>)9??*(UCO_WTMZRWUF,"SU8W6Q ME\BDE^G-?+Q6IS>BX+-B[S$-G\T:P&^)4P-0P6V?;K]1@@#&G1>M0729@W0I M%=N5_DW\$I'(]+15> 44'YH[P\)'/EM+7RTPX'M/@0FQQ4"\KRA@Z?K77XHP M.$L!K[9\'19NO2,DU%A'A.1>H.D<5UYJU^H]838KB5J^*9;F='JE%V^E>WW< MRDM^^QIP>)_3JI]M!2RB7]P$J(*49:+($P1)?[4_:J6AJ%IY&I)TOCS%TM9% M0E 'I[ECH2$[CK?PB^S#6T(M3,;5+/#MX1M9-MZE"S0M_ 0X'@2BS]#D<: 6 M'!4EE(!N6 Z2UCX1T,N@IS]UG?\D1*; G?(*RAT>=FU^2+6"0(W'@.T2F Z2 MS1X2QV?78 KCM)Y?D3,1 35;L,"Z[1S3P'J&6+[B!?PIR[:-G45KV?" #PQ8 MEX+*\-) -\;3@6NR1&^ M#87ZAX:$OT^8:)0D['4C6;X(O_P%C90+#@[?U/A M_>)K0P>-ZJ35H*?C+M7PDX/PW_5P/P#',R!AX+8R5+@X<&UM7,DH>&&XIWS] MU%-FIW?]&J X61WP5D\)#%,UJ$PL-G$DVM92E;2G6D !<'$OSJ MZ\)['7X^W2@+'-G(6!=S#[X_#2S+A@P,2_:O4. 5E+ MC$F$"/_PJ?+/BR?6,S'_I]/%#;&5.9+(AICH2ZY__(5^^.N?&%U:D#]W$=%< M:[9UL+'0@D API*-/* !"TQ<[C[O_'5_] .>VDASW$+X"N[Z1JU_Q$8Y,'5 MV.UP1NC@U].KU.#J9"#D33TY&FFC)8:;/?.K>[JJULZGGI0&2 ,H/YQS>88<=@%81,9P M)YG*05A#X]?QDTF@\@8 #,"#+AU3#G0,1[@ST?&,-Z&E>=6YGF4;H+_ M!T<4S4@)2D(9&NE(X, U1C:^+_RP/_G$GO_O01M"&8IN2#*_#R%ZX[KB6F.X M!U'J4/3\NLBA2^1!]5C(&BJB<*@]XINT+\[TE=E.\&%@-!G:\C279R@IUJGT M2MZP#A1U>C7=Z2AJ V$Z2J,- QQ'4.!V\3WAPE9S1LI&L48-2 #,:F><7P4+ M^-XC:=R22ZOZ?$0MZNG&NCTRW%3^0;84_89LJ2NS0,]&2#*%5D'70KNVB/8H MY"!_E'W6XRE&^W*_!M6KD6S.Y.96;NUT3MP6YAF@SU*9YE]_7^GN]+^O7HX( M0B3;F6E+GU7@-- NP."(V.[5-_J?3ZFE^6'++&?%Q2B7DIIZ64OVLP:;9W7^ M069M+/$'ZPRA<8S0 SX(X;JF!B[W#@(;OY]J_+BZW-GBYI?SY9P:;B6=KO0F MS353E!+;*?)D7&OZ]]K%A=ADP"M\%@T*]OKX_]'\ZJ#F]LXH*T"1:3K"7J?W M>HNGI8T:R[]M91W;'=4/F_)5:YG(#I1N)9'.ZAG=X#2/U3;;^N9\+8NUW!L6 M$_==*T)+!ZA9;%?XI1#;^!7/-MI%.J//ID/3V\S43E7W\JEU89_KR1Z3E] BVV+S!MH\7\;6C^'Z M[:M=R20$O= U\E);G:BCPMJUL[.'G,N^)9\5DPTO>1?1ZBIW6NGRK)8K,PN* MVX+^3"R6\ST;KFGB%W.M>.4;V1/J)4BJ>DO+=VI E1Q7)X(:BAIX0A3PJF6' M?R %K28[JKR*Y T+:CR1JFSKP(T$-S]W-)RI0%!S0N'_R%3#&P<$/A#+#\(< M1/]#A0"*#B=DTO\6V^DM\KZJF5C1/XCTXUQ.4C^]:T V-MWK0GXQ*"<666LZ ME=H)"8Q;>7/4E:>H6"KU+BGO+[CEN0ZB,3:;Y:7F8CL9[YP)EOF_;IIN]+*F M"_78-G+P+0(5-'[%-MQ W18M"%)$+;0U'>3M0@XG[+-".JP\\Z*1@KR1->U7 MI YU8\\$$:C.^KKQQ1V1P8"<:'#1)QIR-D%C0)[:P'<;'MW0!\G..) @X $ 3.HA5)'2DU[13TOE)4V#=]'4J=O MUHK0$WZW@XAORP_UUOU(+WY>H"$UD&,0,D96WN&VIPXR\3+R4E8@!UW%X4FY M[/8*DWQ5\I+CPGRGT^6.T$3Y LD+[CBB*Z2C@6P\N!@0_7:G4/3C(+1Z-K? M:_EX,WT57_@5EM&^/-AG\<-N=L\C\ <3#7T-06 ZP^;X=5?6#G-\]/4;\JVH M3(W>HJQC7\L#5\O)TU(TE6"'3DP^/S*82EFL9VJYZ69O**WA)@SF6<-H6YD& MD$>2G/ ZJ9J=DFNT\ 1R/V%VO<;?A!8L@R+-LHICYGCA<> B@!OG =X<,@G\ M](-C?LDI!^&4VO PG(]3,E 2\<-\$D/#+M5@>T&!@C=@"\J07:2*W# 8X^"- M1/0P&YJ2!IY%"TRQIP4GM_FS_^6;F7) UDA+S" BU*SU$?\9;(0^U%UO9VD^ M,$B@4D%]^/8=*IVQD"W2:2K?J"_J>EO<)*C-'RNO[S8[!]**D;E5MD?E:_2N MTU.S"ZZU^>MO]M?EB:LCH/KQ&12F!>K#J,U%5,/#W>;Q+IK%2.E]).)Y,9 M;?-(EXC&*6BI\Y>HC?RIRT.2W_40X<7G.\LM3Y'<YY7#K!T%H7X-^ M-J/L$(A^0UX9_?0SG@UV^UQY?MGM0_DYRX;D-S,>%+VFLNN1B2G'@FIB[.@0UN]-!A=LS;G@0S/&6F/LSD]G-4 MH4(--=$V-(\$M>6[S!^&R_]YF.CQ>4A3!;(R.Q,3$1R8M'=/3Q)=]-QCCN1H M_\\O-- /WJHMM&=1"FQD' ADI#G#0?CW*MBBZ">T>!W+N7;3X&+GZM7 LZT@ M@1@$37XBOEV!)GN90WY8G&.J. I/0YE__!XE+FM;WUUS?)[Z']%OLID1WT3)X^X(3+%MA#<:3B:[2O' MYW%H7[6.+8",,LC\[)4-- ]O:/1\1JNZI^$P#PE2L1PG#1"M.O+VJJ[F./') MN-!E5V*L 4:)/CO,I7M0*TZQ42YY66#F)BKQY[;N>B_%BL/M? Z*JD?);*MD MSW/]S,"!VBV+JFE<46T#UO:1>@?EOH.*?T&VR@(%J^W^+TS@=L(4]E,$SI5B M'\$0PPT*,SW?;?8M3QTG)\QKCG#L?CZFF$'HQ_F15.#\'[^FB<6C1T!$;N$@J M6* A*L#:HM]Y0S9U'^04=,X&Y>@$>;O!J-,@/QT82@&HNFM(9"[0,3;-#>2Z M#8*]NH"3G\%;V!$#RK%?STQ-Q@]Z83\?K;X^*O(/$ M&:Y)):I.Q: T>5SF4I7:-JY.$8FO0'E XL?(C+)IGV"Z/^2UK]*LA&<8^6$\ M9":?X0]2<5$:JX\O\!-4/Y'J"^\U 6IPP "J9Q[R1:,LP"#?_Z;.YS\H^??F MS09GYK^5@$\)7-UAS4EN/7#*S;Z4D:OBJMJ-*=YT\]??<>[797K988O]BKQA M*8 18#*D_$$O1DOQ("/[/HF-XYTOU3XK0 (4S4"O2\,7O[H.(-7B6%/>L#I8 MSB:=2G.M-@WD_V5_7=:I/:[#5W$B0DT4[W&#.,/1WW]IZ0=)RX^6')IQF6-R M[OD/\*:^(>Y;T,@R#X[T^(HBVB>0L$KH!X*YJT"X*N[=K5D10;";F@YXRBM:O+4TY.WKG>Z&0#PKXR26R?UCF>"@- M'4<+!D<#A]@$H&H)AH>>I"W&GNV@9V$-RX5$" +Y\'8:W*4X@>7!S0XI2LC+ M]6(.&%[2$\">OQHJ#V"#X$QNQ/)LR(%'%QHZ1(>H%CV>"K1,/]L) >]2=AS9 MKR& 9AQ%W_NW]L\Q'D/1#YU>Z!GP=3#+H:.^<*IG+Q=8?^?5#)Z<_,%>.RX# M9**@B 'ZTP]Z/#HX>'Q.])#;<$J9 ":>T&DJV)8\?CJX0!W9#Z:@\#><7]I_ MZF'%*KZ9!"H6#(.5U10X_60D\9%5)S=13VX\U7&>?XNKZ#&NK1T&0R M\#OCDO@O%SZ!J+1 L0/\E)>)X+O 77PD&6_Q1X3$!#KQ MP@S.TK)Q^A$:@2^#6B#.@CK'5X$508Q++]2C3(X( JGGNM M,,H!IOPW,7&UI .53\=),35\DR:8^0IB\-%&#D(]P$9U\0(_J*_ VL :]E/ MM(*O]'5FMJJTUU<-FL!^*P26-_*/JNV-%C8>7 M*S/X/+1D$VB\X>B&GQ#VW#;'R0!H!!25LAF<\_7+)Z&5/QW%V\YD^%8!FF-I M8[E!J1Z_*I*"BM_@D.%A$>'@\>[1H?\Q/JT&+_T:7:IHKN%$+/O)&B ]M9F8 M3A4[1VFE)=RER66M0H5??3J^EZ\T'3^B\PKPEG!V!V_P\2BWM_!%HI]SCIET MB0N 0*8Y?.O78(!?XJ,K6-=2+ >R'O(Y(2_5PZUEC1T+_J+XT.#K#1;:Z > M4@\G'R::[;@QS8P&?Z'B"R#=X"T. @2R M#M+<_/E,@II*:/K^DTXE(TY!(:28(I/8!$C%0?6B\-3P4[Z&N5I^G8@<5"HS M =5[< ]D NWJ*9;+-3.@-%F/1Y)6XK.)S%HPJ-;F,AWE^KB[J*)P50IG'@GW M1]5(?K].H<'JKG\R"=FNRGEJP,7QI*,>#;G +U;F8W10Z<2?#N)5C!(X@>)P ME.,LL(]V*2[D@&2_"N6K,M/@TF.(AY=!4D,%R3)]VPE:,F?L[R@SH'H&"-1T M?'1)M5!96[B/D0?X@%6V7]_,!Y&@ F$E)D&IZ0YAU(DJ$0:>@W?0CL=2]?, M)>3>X%3ZF4Z/,[O]:?\Z5P0/.HAO5#H7>M<#7>R\8@RJA1>(XH#J#@@JFP L MEQ$\H$/LTP\MNGM*@8O3OUY91/'\A8Z4# PV?T5Q3D>@VL*_9-O$Z_/ .S\^ MK!IV#:$(L0'<,VL+J7\V.L^^F8$'R'A:,N=84 ;#]B&A/3!!T2;#!J@61#!? M4V(&G?)Q'SP-[A&TJ78 -EX&'X!-YAWY]SPZ](YLJZ M/Z;?D2HG6CV9DOHP^>W>DE)YDI1*DE+_,"E5/O29V<[S$ENFZH!J#_OBI-^7 MU\W"%*H>5% ]^#C2D6;BMNRTLN*NG*F.FFEU+RAH)/UXY&2:\):EA-D2VZ6Q M4&'R\=6@*8SHRWLN:&F^V2U&&PF :@X4]_'&6&FB,WJ/1]:DD3N>EOL+TCQ.4]XWHZW:%'Z:K.36+"/+/,>MI0@",O[ME(4;%^+3=HZ5YNPE-C MV5RRCC#B+N]9V@]38HO;YG7 "MM29J!/TDYSE+P<.8HYH%]-46.X1K0P3>?< M336/1AZ>_O:T9?I-:XL;'VC'!^6@R?G,AG7N(X[R_5_1[(@J_J;O&*^/7'Z:#'B,/EM7_$ M3-A>U_-B68&W M$VNY"VAU?73CC@\N>G5N19V=%@MURO+NI/%:TKFL0!_JP'"!CU M[:83FIR'K [H<_+!'LF!XP9+3.%71 :_NK+$F[;3A?OBR>JM]ED15ES< ;G& M\&"<)G=$^X-RBO:@?+QM;+R+'1^!'7\'5UW0>3DX3_*X8NN#G6_ QVE80+PT MVT/]=M=ZM96+B^ %\99SQT3PU0-:8 F%"OE">W>,1-W*"[*W X>EK_:C2(GM M@//]>\824!@:[@R7+L#R="'OCID_"PNG_\@G^/OU.#[ZN<>\&D&16US)0C!5 M\5#@]BF_8W%37"6,10N(O?5TOZ@:RX:8VGR%)_$E[W[C^?J]<)O[;O]GQV%L M7F_I$K@R:Q/GMQX$IYJ19L ;%H_VH%YB'G+D5Q3Z61= M57=B+SE=ECJVEJ?8+XDW?5QK-#]&1UT:/_%GVS7 MYUJ'QGP)]A?%/-?G^LPQP#UYH-CAPO)OF%BQ)P!W[PQ?K\Z'6)_TJD MR,+<;&%>;K1]@5PA:[2:1G79D-7W 4U3?10(V0OZH?K+?S_B?7WN"MD+/Z-P M7:3&HU)X+73>')_\0I^JFJDMO$5PSNMP%NQ)Y2J]Z^R6X,&YL<.."FYA>WEQ MO!K:24D>I 8TPPVK=91I?I9;'G. \EOU;&2^O-J>.*EU9\GENP'/&FU!]R@ MDE UW+ 5,XV2RQ_' )'!]TY"R=N/)=1V&BL6&&?7T#U:52>#>:O7[ M7"86P MUP'F^VB5R[63F9J12E)R=JYDAJW27$J@\] 4MB.=R[#I\L]1[RL9HG%IA7T8 MV'T]LGT$-PH%JN6ZL.[6[%719^4V:+V1S M L6)G6)G63.9B8;8,4S0]2RYTNL\GU8+N:Z4\<8MI>7M-Z7I=7)]"(#9@P'7 MV4QZ:9V3%XP'O%VJ.K\5@(5,R&8'@'7:,=3' M(W38]S3!$C-9*5/FHDWU)@5E+6][,7U(1N4SNSO.*YVDHK MM;ZC^E:?3-!QM(EGFQI*-< G!8.>O42G(SK=D_95[K!CX+A: M;:=3TE>[1F]'I3O9_>*&"&=E"@S?G5@9O5P066>M8JK>WO(M70G<2ME3E@#B6HW4H(D+[O) MC&Z,.QE=""G>E&C/4)(9/KV9\-G%K\,& M=QI.7#Y&[LX">-]#.ZC(XQO8/2%[2:(BW,[O S?08^]MJ9^W-;F;;8GT+)-8 ML+-VOVE>#S^]7T?H9<1X?27%*U)&I.;.4E+R*IB&+$[W%*4Z6WE--V)&2P1+ MKI1L52Q;>,(U]B%*0FS(CO*S18O2Y4IRNMPY>HVA7J\D_ LG@EV>@KRK9+8O MJ:F)TQF/=9C.DH,?%+YR(@@Z_"QQE!+_;/9G<'+[D-I[2)T,CG<[C[(]42?+ MTP'FV7G-T5/&)^-RYC,\$5MQ\>U$;4"K)<\4F*\\/RKJRCGHOGIQI.!8GP MP?A#W159W1V.J6LV;G:&RXI[J)DH?H*JGAU).*Z%Y1P?[I]A<#QTG@L717,> M)."BXUBG:>"C,H=GPH?\>FUSNZ\J X_!T_063X#G8:7Q2:6,W[(3G2B[6O0] MUS:93F;15JFVY6;J=;XXHW.;5W==_1@2,*/&3"H;ZU+3$3-5:Y+1"D86"JG/ M(4%L;]D%%O0IJCUQE5IK.921N/J[9EWIT_NX ..Q%1]J,:J+VJ6 M6Y5UFBD#:U:N=7.%YN5)U^OC[J(B"C0E+)2WC8@1P(=_AN'BZX>5L1"4:$?: MXM-2J'-H!)T+=;$9YK6V?03%$!<4^S['RQ.:_7_V MOK0Y=219^_O]%43/G7B[(\ C"4F(TW,[0H#8]QU_(806$ @)M+#]^K>JM" 6 MX^6 P;8FIKMM7$A5E4ME9F4^.4?%5; >;21Y^%90F2-("/^(@\]:Z[8JNCI9 ML9PNL\%9P@>:IE.$X4$D'A3[ 6E$!11N;8X^@B<>.CC<)BK[UN&:AWYV^ 2W M>8O[ $ D5)5FP%(B#75Z\ X2;7]VVZ@Y*3Q(#Q[%BTXK5O>1@16^:0?]-X ' M0Z]G@3YTMM1%Y3C8S"QTG4^([AQ9J/X.'I2VVT?U+)S(X68CB#I4_*;([DEW M-$O3+](,3,1OTNI\!1A?BNG R+E0V3 -V6WGZ72$<8Z^XS!3?HQS2Z[<)G/SCMIPOF1T=L3 BTJR,87R5;V?43B5>Y,>G M.W1^W/W,CM&/\6$S3/O1;+?K\U!((,0@K[B M/JY,/"K^]?YZ\BC>_YOHXLL&7,:GR.65'(8&8)FEK3JSWK] V')P"DUI6(#;_OMY2EOQC$QQ;AH6,<0B[A< 1)(0->F2= =O#@3"% M_M_"/1,5$5;3H\XGKM?+1X"G/!Y+R*Y'AAQ$@3Q>'*HJ=0Y)^.E!'2AR7OU) M>?10C&#[OQ=*2!UO5[E0G^KBV;H&J%/V[2()'*[WL!9<@M]&A:T.6BHP#1%& M]GY[7,AJEZ#N5@'2001.U%G+"C9E7!@Z8D4/W4_6;0/LR-+FO;L(5* N*] 3 MV\-$/D4J>P!6;^^E\^#&^Y=!K]1YE3_#P,0AM=&4; .L:P^'%F@XY;8E[,'P MC&.XC6QU%C&E,7K"GSZ2WT$,*-V+^5T=P*;7TC'G.7]%47OR/73+886\_U3E M27J*1EA@?E2>E35#Q<.<6Q@'?]8\QS-\V(<=:UY;Y0/YWRY M#W?4X3D853G:\(NPSH?*Y=RTG8C2'**XFBX48<"4].,ZQ\:GJW!.YZ('?8F7 MK/WC24"%*8GGIGSZDN@YTUW9Z[%/B^E]P7#QWF;+N@H!0=!<:A1XZ$!)+E@2 MA'E"_JD+HHWL+ \@&_[5YT/H;3M] YVHC!>$1# C+A@2>@5X$,1<=)YT28$X MOB5O>DU0G4@RT =@24YPQ]-V%R7%F;\+)N5C?+LA 205!X$ ,%M/.0>7! $N M(*B%JLQ@=QB$;0%/.]_9#0H3X&<4!3U6F? D0K *Z.M'[J>'=X":X+PT.W\Q M@1ZV!Q+FMW.<\X*A U'1]+EC0OH([.#\!FQC;-T0^5$?UJACSK@DCJ+S$B* M[P'6 \A69^'3G9F3)6T,;"M/8#YO?4" MV]+ %[[Q%@<\0!K*SP8_SN;B6"?6+O>*]G--$L3QV399)PU)4Z[?QNZ]P$ Y MG&0(:./2.K##G:"!FRG0&37YXK(V'6+S6JJ^:@U5B\D=7/L0[VA<>&86\-V M0L"QJ,E='9+(NQIR1AF!.Z$8$;@42HXSU1FM401F#[(IIC0G=!0/M /\#I6Z2@&+VFH^:8Y@2(+$SSDURM]#E-N@_2/VIK#;Q] MHBS>1"(J,Q"Z92J5F:5G*JW8I++>U-8?;B[IT2B]=_#3P9Y/;1?H$Q &/]L> MK;HL9Z>#VH#%2M/DT'P>BZUM=_W'/XFG,TV]O99Q@"!%H-OAV;*W,$_-_F.! M0T0\ZSC (P8"?Q_Z:< AN[;$O79W_+L2.$U6$]E,?$=VE@Q&615A9I?Z[Y9 M!#7%>9&)+-A8U)AV+WTM1U,VO;TL:,XSP43.RU\C/X\9-4JT.RVY@HT;EK9E MV08@\SGY>TFAAG[9^L*G!+R;FBQ8? M-,#0W_8A!=/4!716.1$QI 4OF%=(&9Z+/LGN_7B@;<*!/0A?;<*.F:IR8O?= MC0$>BMKL03=1!OLW%!84? I$U-S.%="T89)G1HP-&/0 #Y)A/$1^V4> TN?X M"8!JF-//="QI4+U#*Q.>B+ 1'K*+(22C!RGZ%.E-%$!Z]%I@6:DJ;$4#:&F; M;I\9RXT-P6B2]G 2-37>=\A#"*;PFM.<.R@Z]Q]_R&GUR"8&&K4 MXR9SN!. \=Y(#0@,7"=<7O3H)8KF]H9P5@$M2F>S%+];4*#/U#XNZ9JEI@U> MJJ% '907SZ[S8U]GIN3,UWG=7F31UB.GQPT$GS9*]N$P@7]P80F\9Q>C!"W7 MA/8;LCF0KFX2WH?F/)( HR);%:D)O\-1,&#L&,?LX66!@YP-]("@+!!K.1?J M\D'7#O2.0ZUE+UQ\4G2,O>=Z%!#P0: MT)Y#4QWJ)+"6J+-]APP[YZP;>"C2BNAFPT([@X#!(_QX M;$ACE-R!HI\(*=P-MR*"0=XX=C6 [^#M2V )AQOGWIV\ILCW&L,["E[2[.=/ M;2R@Z,_E-B 5-;:!P8A241;V2$7NJ#-)!]K3=+MZ\1'GA@T^#[SJUK89=F"; M88[MY1M#&=<518!&<)8'1?/N.F$#\"Q8I3/B*"?[HHV'V*+@>.**9!8TX>C; MJ'DURN!V'^/:9.;^&0>\#S?%*_M:,!I?FM!\$UNN-O1PTYF.I77C_E9BO3(" M,I64JAVZJR5K0B:67J: ,\"$\8+8Q6 MOY/K-27@N;/ L$&?9P#45'0,8ED*M M];W>..BC?7KFP/%'@4?SYWY8KJ:I@87LH;?Q8]I=[M9=(QR+B7V7'HVESBM[J9]*UE+S0@YEZET MJ^E2K <;VN-O=ENQT&MQZA4BJ+->T591T 9W;6UDG1K'AA,TF "_"QY6_=[^ MOK*]ZME=3K=@K^>*XVXZ[=W.^ !.\'[_*L?,&TD1]*?#0@37BD-Y%OO>[TCQ;#,TVZ!<'[S)\@\VS !WWS&\>[?AZ01"B1A*TV^">T\![D\MW]P,AS;/N9-!E!ZIT 2PPI&61U^H&:-#9X-XQ MOSE&\%'_]RF2A1ESP(C4(9;78;Q DL'3G$ 8>"TL:G1O_)R8QP+F_^FV"93N M4=".E^,WA9=BT+ M6 ]SG_.HK+C11T7F5QGVV3D04'@-\,!^^X\EG<%B]"? MSF:Q9!KB8#7;I"?<4C1F"9W(:686\M/3:7Z#E\6R/[B#Q:5.('7L!\?I5TA/]4.PIZD_KPJ. M$VI5MQ=M!D? O1H30T(J FV"0WM&)HP_"9LU'EL"D%(%*>7J&.R0NM"-V8H MJ=4!%7!R-]V?84 +&FFPO!=V/]2]^U,^XF@*KRHHZ"&Y<:/]%/:=(4TI.,G@ MW)#Q/]HKJ?T5NF,)!QPVUYSS%^!X(.K>L'PA/=1#&''[E7K5R@(R=2%&C'90 M>@;S0Q=NMABTY"WHY8P5+]/5HTW$0$5-'@M[30'1HOSB.?=U>^;P"NB\C991 M;3J:,O1?T%I1(JVCA-&MN%?FPH/I;$WE..D?^BR_Q7VO)%NX]\!'+/J*]7HX M1\>"/9F=&;RX<*_'+\[4@0)"F^'V6'2<]#D,AR)'RG_34<6/'VT\\*/V^W2^ MOL)91:!XSC?%#YMC!P[DX.0N;.RA*G&DX+-3^[Z/;6]U)@Q5EVP_U-6)S$;[&()+#U72O*B0_='U9?L?Y=37E/! MX36?VT$[H.?/FVQO.GS.WY6[ENRC9F;?UIE^IEE^,M 83%E-4E5QFI]+L?4] MK\GQFQ>Q2RA%6^EF$KCCW_H^*O7XX2FPJ,\7@68I,QP@-6Q_,&];U&8?*2]0E!T1* MV@"14*"#%<"N4C09B!#,0?!!.?8>(+0B L5QD, !, X%O5:2T#!8260&*@ ) M)[D;CENA:B>P[X KC@ Y'0S(IQ,HV9NS+8?JI!R3([#C+A GKQXTCQL-].O_SBICO)7ZZW4O1^"S!4LI)7FL,;( MV)X'!?M2Y3@WU40UN&>7H8YZC(G5K7ZI/&NEB42"K18'D^'X$;4X6LP!5%$' M!0-0E 2X).8A;HH;>O31<_?9__L2VY8$W&Y@240"56OP*9"K/?B5/^&#".SO M7BN-?L+__@N*JFG#6$ADC9[E5V&F(#/G%5A9(DHF6*D+,(1PB*-!5!>8PV1( M+NK1/I*Z3[N"\W">KL*(D7NM[=KYSA_$TPZ$4,X@/>J&OH(8-^"1!1.\7(P& M%^642$=X6*+A!N2<&HZW&[%C7AVFXWU#LT=;X-PF,S%=:7'45EJ_I5KT=2X. M!,WIMYJ0CJ'8='>UK3?1GCJ?UF1$]C+8R]36\4_1!Z?=Y,Y&TZ=RJS(7AK71 M+#?#XZUAOHQGI^"()N,7:D+!'JE._-$C-=*( 2X AX@'XTI@6.(H9@8UO*Y* M*&G/7,#X);QW]F)*D@8$1T)84=%S.- N#+.BH3R EYD,L=?:@2=R(LLH%A5$ MFD5Q6!BEE5R'Q\.7TB!B)A O**%,) ('IAC)&L>)]Q3@"T'(5?D!> M/#EUZURI2K?YKHIP+CO<)\"\,#P:!5Z/I5DIUKK_KFHCHCRCL^W^R6N.*F\>&2Z, Y<):[R8$BD=-GJMY9 M)N+K;(:Q9[,E;/[X1+W,W1>T\&L-,WWBABV"Q8)25M\IM.CI_F MIZHX378[X[MM%$^F*^TY,Y8[M4EMWJ03/6:0;UR^VWP;OYZ49P0Y%MV)F=)9 MSKTURL+OPIF_14$U\? MEP>*+V!0=,P[90>*J/ PE.I>1EH>+.(!*N+^&M03)/C*E_$3(:+J-NJ'49 ? MO;\_="^^X1.@0XZNVQ&VTE%KC3W,MGF L[WW_4W/7#D+?[C/T3T/U^JFAQSB MB<)9C5#52>#F'!IZNGN9CJ8-=D!Q7PI6M0:ZT'S3WJ M<8'&13>K4M*<_&#X M+><2/EA_@VZIT14)OT$;XY(\V,#%T3T^&+P#0NG'%0[V$;X_^/@]!CZT@(T( MF+2E2NY]MX2R=9UHQ^M+0["1 Y%U(=.<;;6%8GN!D-ME?KS&ZLFWA M.1FC0J/">YW :3+$Y^;D\9<=EFA_$A=CQ2[(X+J7R24;"YN$FV M!9LOFUDX\N3MSV+6F%(#EN1:A7ZU4C;D>GVR!B-/WMY+C[2L2V5:[ MFVZA76>'Y.G;TZL*6Z&73+M#"-/"9COL#XL==DB=CE0WM%VA,?.94];G;&RWP9:QH2"3VC2NU^#(P[4/Q5%'XXD.8YAM,#(B9-GSU?B>,@32W.VG,^-YT8SR0\3XW.<,M288B/#M9XQ M12ANA=QJMDV;C7.EP\6>,9GI*%I\T:JO*^!RG9"NM[B[?5TK8W(C%A<0F M*;1$]ARGC&J3]/,@-<]V^':BSB0[$Z-OG^64%1TO2V(7TV=V-8;O\ 8W,:7U M.4YIY+AR<[?N63-;L9^+9CT^GTX;YSBE7RUQ9F]!:1Q!#\?U_7;2D/\MV5K1#^\<+ M]3J5RTYLS;W8@E85,@UA/0WP?2,.J"ARGB'N#X]*FE&1#0PN^W7"+C"VDT=^ M;/5$YOQVWSO(B8)]9F**[XI]:L*)YWZX?7[<9%!@E@(' F:^PJT[\$2\ADS0D*]KDL@H[K\!V%'E2)=&8W32?N=4?[S'8F/R7$RN W3U?]=%=8J 7>T/YD:FKMB5] MAF]^V+3\U!U'WWL[HP0B+K_9UAU_PD.RA&0)R?(VLN!/9#PDS ,2YBE)A71Y M1+J$>NP1R8(]D2%=;D:7_U@&-)BO9AS?;1.8=VS"+?7$;V\ <^EF\XT[XKTV M#9XQ,A3PFKRDKB2X3/A*7C-C[GOA!L$KZG/[ ]PX^.'__4']\<&](FCO'M3W M,1>;"$KQCW@WK(^UE9=B7 .8N\R=SR#R=G$4V,)0MD+9>E6VB(_*%DX\4?'O M)%XPHG@H0#>SL:^R]$L+=0A_^N]K\P#^1'TS%B"NH4/WZ3R__B4(DB3+=U6K M3Z<[^"T\Z%=WZ(R?)U8P?1<:/&242E+ X#DM7?\*COZC6C??0\1?N=OYAA+^&\;+&0F7G_LC MS6IS-6GNJMG!: UKE( YE$Q$DS0= MI:E3H-4P_A/JAS (='L[Z@7UT&932DO3UE6N9BE:4C;2F6+M%K84-N&H[19C MNES.*M6+F!PG:'8,U ,, S%1)DY%2>*2M_3UPD#'#>;">-#GFDKWNR#^?+OI MSFM]*"WY&T;4@<@>NYW,1AZF-:R%+8ET$D\I%:4<:]Q 5:KYZJY0F!?ZLUBV M,;=6*;:UJ,%ZZSB$?8J2P.TD$V086 IUQ8=LJ%!57,6@NJ0JI&)AOM@E6TF, MSC2MJLK%>AGI%DY72R57W';'%F?IF:K:S^OGY;,,@4& 545'XP09)>E3?,EO M$Z"B7T^N:NL6'TA"NE*BW>-Y6E_$)CO=M$-]% ?Z2-1M6&;["+KWMHE-=U_Z M0^GB]\-67TF)]E*KV(H8Q@:<8N?;@SD^X*>9\3"!["T&BQ(X'B7BEU(4PM!5 MJ!NN&]:Z^\H?2C4(6L7G#%50%A6VP^]V MC6E>$;%NE@6J =A723**8V0TF2!>,[#^@W COC3RQ>=,_?BJT8&L,2V_;XZ/ M2O+KH0%G@@(M@_\!>;TIGLAG@X7$G[ 0+.01RX:?0O"#D"PA6<(B^Z],%^() MIT.Z/!Y=0C7VF&0)U=@MZ?+>$/EKMO%/P#.X;07# ^(9?!PKA'JBDM^IF/W6 M<"&A>/U \?H=J(C$?:_W'Q;Q="<( 'R'@,2EU+0KI%UL%MJC$-O.&@QR22$3C&!U-8#?)=W2.P <3BU Y MA,KA07(<7U8.6H+K#12,,+#T)C-DL>9Z$W^^A7)8IBMKA9YDY\R$Q3OO4(@X M+:"]^K"96]L+G:KX.CC_GZ(V^[/!$4YMTZR-Z2]XB]RB'3=-C:_#+X4AP[^")X,AJG&?#/I>3NQXT,/*H-%$K[UY3VWS!Q7I'VOM*K%LM) M+38K]6=*D]@4NE;^%DG(QC8WJMO-; )K6-R_/,2G..E@C.!G%*0)"*%[= MSGDPJS\CF6"FR.R!J7^V:EV[=/;Q/)VO80B]FJ/\O8OF'F_U#Z6 ?\/< M*-^T+_!>&K"K@^>%9B_?E.?:++T<:WDML]QF;@)A6TLWZ\MG9M;%EO*@RV>$ MKD"77 @3/$HD\2C%W 3!-HQ#A8HF5#0WMO1>5S3EFE2AA>6V.\OE)[19JF#; M0>8FF+AL6ZCUK5:JLU7KO5YB6"?Y7*-KGN#, M7:E8-PQTO47MWKO@[),N ^Z]S(?2IE\8;H[%S$5J'%-L3K'T)KO06JMZ](>=J,;I*T]M8LF,G<^OJ;CF2%FK# 4=Y.^2< M5[SK#JO: MNHTL#%VTH1A0$E)4T4XHHIFE+(IR)^]4>FMEH>^YQ^W?#+X"5K< T MW;7 ":QUKXC;FAB2%)GKIA59Z M;!4/$"&](O!D!^BMGP)4X#W^*I/U%@ $1 M0$05C 6C>,?OGH.]GZC;R(@W%1/^V_GK7 )OE=P8\GR!]")\*OR^\R1KNX ' M _@J++.6!#B%M6)-P$S_>R#H[[*?3,,:-GEM+"$E"'^K*)HRM^>NZANEBXM" M/:'U.PH];4[8#*L:>?9 VP'+7_@EVH;(;SU5!Y7I+S =\(2:G.&W)BN#Y:7W M:TN!90'6,%E#2GNK<;1@E3>,H7SF\#RF<+S &NFL!G&CY[G,E?4&@MZ?.OE8_V4MJL6<@Q7:PUVN2JA$U6. M_>,?DCI>OL-3X-6 1V0D@Q.'YZ#XC6]8P6I\2"9X!+QQ-\F4-727#$E\RD"W\?/=1NH<*"JW2=[ M7P>/$J%:G0-K3T3:5-%6.J"EZ.I=>P%([7P)Z5\P3QZ>6. -D@%Y&'[-F2$X MV. ;)%Z8!/3X4X155>\,8F#*_E:[NX^X&?Q?L<+]#TX6K.\,P=QSV-UB, O@B0@3YS -S)N/'$\SZC\-:B*@9XZ8 %$=G)NF M#.8"-G:LZ^!$UHU]3 T\:V\/ "KPX.A5P"3@E "[?)H\'K/X?Y7#2JJ@<7G< M2$MY"$%\Q6;;FT$Q?0TEQ;:@;H%CSIMA\#'P^2E^PL]Y\Y,I@>VS#M,Q=V:N M[0;L*;C]_LK@W!T#D+6MB6X A>E]XT]7O'ILVI6HOZ* Q5[8BZTK'V-H^ND& M^'4L:<(VZEJDT%+DQ\!$1.ZD(];@P6C[;$.#9XME*"/;DJ!R _+CSQ!,? $] M?F>O@X9D1+/)!X0C:LKX2/+)\H35Z-YD(,G#L73;4*#CL">U M[HB5@N0)3A"2I>[PL.:9&L?>._P=ZFM%LWG7ZT /&C"9'N%EQ M2*9;5+:_6"-&D%[(RV<2*GY6[R]>70/[SKL_2N[#?[_\^%?<42!/<>K?D<#/<#M.]A*"505V[ "OROW: M(625]^$KX ,N82Q]\8O G^!5$S!/8N["2/PI0=V(5$?2&]\3YK]\!/BWP-S_ M5[N6/ELMC,XX#1KUZM_!VS#W(Z $"P85%4ZPO/ MF-\)F(V&$RN3QG IU^5*?9NU:-%JSOC&$ ZEG2@A^(8DLM9KHQ,OOX.A!]WV M,I8T9KF-2&M8OI2?%)UOX:?ON#":N(78O4\YW][(#"C^T,1\6R#RF& ^IB#< ML9=;5RF:,\T@-6]6=^$CA]V]0? M@6MXU=3W&^'P4!3,'WQ5DB"+1\%V:.!LARN+PI$"H"^*T7I;XU=<^YL#51)X M%)B/YFKN\]R1@6/2NF?OP>]+YFM1Y^B!^8@L.O@[,%L5'>1C@>XD*!Q"IR:N:];' WI&+2F)ZK :81J&_J+ CK?'29T MC5M *%M3!&7AVKF*)MK0?N:]"(/[!"^2;0%;S8*$?(JT@)UO\KCJS[ M[YJ?.PV<;Z+].PPI(6';?_GM:N?@P4"5/<2.!VR' Q/U&+I6EL$7_14 U0#- MD@/%@5:+&.P_KC" IXI'F^L;+@=H+U#K.N%*URF%?IRVL"T809SH8@3>+<,O M0PA@10/*"YX&?SH*QY 6P%-TO%?=F.VCC'^A"#0@4L2S>;WPA842S22P3W.D MV)T'\Q:2!E5"RP%#YQ)O0DT'9 YXR"8\+]:\ 60=/,R4MW!*O+^B?1S5>3_B M 'T$2.)QA^O_>D\=@?>#F.N&[C)XGH'L4(R(E)NWQSYRL\="CFR8)ZH0CEGQ MAJ+;8+LL<&2A;^ZW^0D; %JFXB MTB#6<4,(WKM\PA_OR'Y5#B(,W R\7 M!M*C$5G92' P.'>#+U=TPS\=P':C\QH&Y,]-%;[-7HC.I"9 '@*3?.OR!'MN MNX*R#_\'O1)#=&]= ^^%!CZ2=QG>#AR8^O"0A#::(^M +F T T:2("\FKK,:E+Y_VY>>!NP1&F /0^^@T81U":W6^B?38DUUYUZ+Z_]D $ MT,V _^9PK;L8I";\O3DC*0<*RK.[H?!8+K_Y]W"ZLQXH2 XY9X4@H3M.>!^$6$5"_@0ROZ#. M]1?WPM&',.5M8#+M^3XHYZ*C)DXXW[]E"Q 1!9U%1!/GW3SZ,O"?X)+]+P.I MO?#@P'/N9H!D'&, M[MH6X@1*!SB!D3@>==V_H$IW6!+R@F6Z[.)\^?B(.B ,UR?*^/]I&_O=.&<%IM#,%C?6WA7-W);5M;Q=.QL?+@ROHJ'9_ ME\2L;K"F-\I[D)LDHJBL*13E7+'&]W1F#-E5>K?_XAXC&*3I*QI,G:8*(>B$YWD>.JF2] M0HA4KD>J7'7>G"VY68/!1SA'3,:P_BY!8?"?$T+ R"4T1*#] L\W[W"XI&&> MSC=)P3#D[D1<]Z0-;C+.\IX4 3$ 0IF]6!GR&P'12Q<+H@)1F47_.@']!]FG7IY&Q)R@1+M7 M-4U&@4$GQ-CH*^:P0Q2773';96=TG"074B?;Q>WUU^=OXAW\O6?N+-#U:>Y)() :C3F[5ZBQCR7&S5P2J"'O"3XM/W\CM M#Q!PN/UER?N#15_Y.B5R1:*^G"_WUNJ2T^OT+W_!3H87[.$%^Z==L'_LROQ. ME^!'?ISYTL&#U"HL&SH-TKG^_;T,Z(^7+WE/ -L)#W:Y[6KQFIP#.KQFN%\[ ML%"\,88DUE:2 2GA/FU6 H;%.K^;8>"T:FVEK-WNJ%>OET1VQ2)1Y2;]3IGG MZ+61R5%SI=^JL0ABE<2!>9T\[6/X*3[.]2O,KDNBM,9,)@EN2'>D9LIHFEVE MW4W;\]:*XZ@5\T5GAOT>\K5 MH6H0KR1C:39>KUH%+-?*V\_22!KS8 __(; H19%1Y@Q8V,\4YW-TXKO/U)QC MJYM9;9;H\W.[NL[5KUZ#BNC4KW$<.\ S-B<1DW&FS^=[&9>RX&XWBGN)ATX2<@OWJE_6/O<*7.L[KN@G.>".HXBMY&+#G7IZJCBFW-N:E&%W,OW$I#7_I/Y2_GBF[O!Z,\<)@O#[P$ M17.];^2SJY(V!G\#C]0KTSNUT*@53$]0MUYA M-&0_J!2UNH6_ M7FUQZ[C5X4K>.&T>\?B0$4A"$A+Q(<83V)!,$J-ADL>I(2XD!)X9X7B2Y_]P M8@6\AS5AU1;F;#,=+;F:0F9[F_E*%9HL%-#CD3J7LHN3N%F;+4M2LL^4GR=5 MBAT2IR/3TC.YX4=J>T:('%6<3!-]CFR D=3)V[55*?><&,^Q&$FV1::0T#+; M\1"LX'CD%H]KJ6Y_T)NU\.YN4."*8M-8#\G3D=KFV>I(:=W&YN-MWQ:MQF Q M;("1)_-L3:S57-43; MLT/J].T"-Y%R7%6NS'H6UCLRSI6>!9N42)J7;VVX\)0*CL3'$L=.AZ1YM5#HSF>9:1+]GVZ7IL-M< M#W'\=*C2V7!Y/--F.+HU)K7N8 <,*/#4,YNO+?CMF"EN9IWTMBAL5MI@7IVL MX="3/1W.ZF5Z,A]M9Z7V;JC&)#%3K+-PJ+>IMSX@TKPY@6!YX#_DR_N1Y"^;QG?;!.9< M3."3L)$O&Z9WW9)W[H#?;9WZ:+=U@GQ*GH H?^5NZR>!$Z^"]?<:L(=B]-EB MQ+RR(PY=3_]]7D"(CPH(CC^1R>\D(#"2=K5>'9=MXV_$ ]0W8P'BO0KQ)-[V M:.VO+BTX%0R]_[H>]Q,/MPW7ZV_UB/TF[]!)XQ%[TE_4@U?3ZP]&^RNN#G^X MQ86,_1[&_L!I=<]F:N?N9K^"!?Z(7'O'SGC.*Z[7N.A;]R5BS6%-/FXVD7:2 M!K9."KG["WID?U+1"Z*BMC!I*Q:L6;S/9\@/%VW "_]S;1PW24X:+!()K&38 MBSI.B5JV"%.D8+]8*LI0B2B-GU;5? 5'Z2%%]6* /I34QY14XA5)74_6N)BD M&RH7FRP'2RNF\L2N<6U)S?(<,RSTXERI5UV;W4IQ)#5ABB)L!49&J40\BM.7 M6CM_97_6,1J.V@YUY!XL&VX?7/JGZ3)+MDA^FZ,;O9125CUV/4P@DP>+)K#D;:^!0E7P0DCFWK(0:H)'T03$ ML%FP2DK:Y#>='#_-3U5QFNQVKFT.C7J#88[:S6/8LD?(VK.@%*9I%F@"8 Z1 M5)0@$E$2)LM^_:#-?8V?G[;F>^>HW"N;[(>M^:=&,'[8DK\N:W\#=_U25G]K MHAL6:LT&6]G!;V?SN_ZNK^._/S*@G?IR&9N]6RN[.1@QI.US$:; MI_-4BX5HZ$Y2'X5%:>:2C@R#"^$%=ZA!OE?-PKLTR-I>4G*LQS"=5G9 6#NL MNA8:2(/02(-@B6CR3,.R+QC%N9^*^*D!GGNK@3#_^=LD][U/IV7RF^5P/*&Q MTG-_L"KO5MO2KH$FB$HQDS@1)9@P!A36.H2R_H#I>^^2=;Y1X-.;Y:XSVW+M M9G[)":46.8831(4.)$-&X\25[9<'\WK:NL6K+W?Z">-%GQPOB@.-(.HV[,#S M"-KO>N XC[CR1U*&MS!\3IM:O:X3F>1SL58H9N=<21!9NIGA2M,*:E$'[!^2 MB-($?MM:SU!3O"DL%"J*'ZHH;F$U?411\,7::%E*J,0LMZF7Y48NENV.QE!1 M0.,)BR: LY2@7D7?^@]J-_?/27/9K]% +\BL&";+@!?/:H1/:B;NMF$W]YW9 MCWLZ(D ._KC+I*7[+;P/_Z!H;M]&]+NAH,;>@$L,ISDCR##8$*DL8)C&* M&I%"7)(2#'C=08-7.8$5FD1>[75ZVKB0*(SG?2IYMF%PM]*;L97I7)_1LU*N MTMKN\)4\/MT6W&-7;:\GJQ@Z=7)R$9KML7PO*QT;(OJ=^N-:K.(-X;, MZK$%3!7W7GO']5&O#L34YO84C3]8NIU)BK]LG)8RP^Z/!M#9?;M)PY&=U MZRWK0*"KNB690+1%":CI&I3&IB1(0%$#O7FQD2JK&') M08XF0 M+@](EU"-W9(N[^V&^9IE_)4ZJ-Y$?W^E#;A""UGJB?Q6[1%OTD(V%)I;"\WC M- NE$]])'*[8,/8'L0#SS5C@=QK&.KKOP>[_4>!]?R&V#T=?B\\?;+WWR'> M4:$'VX:;YC/\I'2%:^4U"6M!_^5=QP0N7J!X.@4RUIDDA9*^-"6+$T8<7V-2 M4RV[K>L$O+V$)6Y,E"3I*$61MTAF"F5['RIYL&T(9?O!4I$^)MN;#=:*D]1* MGM&L(64;)=5.:5"V88E_(HK3\6@"3UXK>_O^CME^8YSTGEHZENH6OH"Y_9AZ MZ>)-U)>K*_E):N?:J=+'.355R7I9ZSP7N%0CG\-8+J;9-6,I3P?I_MKI#DSB M49RXI'%"$;W>+4LHH@\LHM=.4GZ7B):&6I(:M_3T;-ZR8ALJ2>M\>>VT!8XG MHD3R:ECM#QFQ0'L51BSN$;&X=W5GB-SQ* KPQF$/).,O:T 9:]49KE-/S7*3 M03?#IU>-44[K$Q1S23X MEM59DCU]28_3SY4.ZS0A)IAHG+D4$/UB09//%_^?Z:J%T92OJHNN'4TY540E;*RO'UUA555? M\YH@P6V."(8D*E9$!;LF70,L)_2@POC*E_2@3K8C\N<7,UL\N<[J1D:W1Y9L MJZ?Z\6752*;K,9PYF/Y />/EQS\6Z]D>N+EKQ>JN(W5L!K7I4EM;;';-I1R M)\Z#D7049RZ%9 ^@_;XP:M$Q7MW)[Z@\.E $+J@2;T".GQR]-0YG>8LJ\!?K MMPC2$UB?:RGJN+3[?PXJV'T/(N9O(!*]P*K%8BCD%\KP,7OR+5]?\ MUO1LSN13W)/J7[[TPFV( (&/4_^.!'Z&VW&REQ#V*;!C![!.[M<.D9V\#U\I MU'<) X&2"/P)XDS-P:_NPDC\*4'=B%1'BC2^)\Q_^/5PJ\_MH N+2%*$-)*( MQ% F:'%()B$BHIR0AZ-1DL=Y64PD,>D82*]@8&TKTZS$.C2A&G5Q.UGDYHUS ML(B$I:=NV>E3X+BU@:%9_'6@*7N=SS8,ODGEDRSH_/P2(F M5&/>%H4\U>FMXN/=1FEEM_SZ'"RBN*I4V7RE:',UL\:SB5&9'B79<["(N#(6 M=TQYM>VT9*S=:>%B=;+=1Z*L%)MBU0Y5D_+X[&0_IT9'IA2<7A>-SK M*$97:RS:6FT@-FLP\F3M]+:^67+@@*/C, B^C"W"$POLMXA"[4W8O?N@B0YVCDX-=NCPX8]/O3*/Y? M1N'_FG8&&-!LGX<';#UGD[E^KFS-TC4RR=*CG6T)C3L!_D&85GB$K\!QB*XU M$+;KRQ<=<%--Q80=K77YUR<"W(;(A.] )HS?%3TJ!"8\[\025 A1]'ATP9_( MBWW60KK7D<:,)73..? +)V67]_ MI1VX C0A^43'OQ,0UTV@"4.AN;70/ XN'7[?#LR/#$WXK',%3,[N(80EG'".R*+>COZ\+5#1U*,*#I[4R5 MGZBKOD49RVN7/=] %7TT ^5CFLF7MC.:Z8PBB@T5$^MTED..;RUS5"K?P26N) :HDA)[2+6!G8 1C=,B:]WH985XU+ M]L1.,G21-R>_*;"[O!6S^]*BW%'X++N9S9KQ6*?A !VBCM_$WU>U'![,(O9+ MRM:&8EF2%M%E.2+:!HR)P RVK<0;H5/TK9VB*]L>#^89G2SWZB6RGVN/O,U3 MZ@%IEFJR?$[C9;OLS&R-NA)6>BZ9H_2VJN$3%]@P&25PZD8U]J$&^ D:X/%B M(Y^O 7[;MKFQ!LBH@W)ZN]HH6$GKY/"$5*ITBFL'O#!!G&(/?;1B_NZA$K = M,-]G"TMZ^'.63NAZ_8X6>V!6"TD&\6F7F;'G15@"*==?X&:FKS MO+,I3F)7XS1O\IMTK^' )B;Q2Q#WH;H(U<4U3*5073R6V7117>!F:JI.,\O< MC!Z4*:66?^X(%NM -R:O?,/T8"X"IXEAFLR]?<2[PWO<+8_F[BM_I,OW1X-M MW/)DO=U)ST6N-.!+S8U0HGKJ^C)L8Z@M0FUQLVC3W5?^2-KBT=+R-)G7<;'8 MR'3F YGH$NN^^KQK7(9L_/Z@2)^SE!;XBR(#$=,LR#(P']PQP4T8(7/-.4,Q M9Q'>D"*B8@K MI/$B*)%JKHE.7%BG'GREW"(&G)MM7%Y\]^XTS[D2DTR5S%Z MK:8[K<0FE5TW*@72')\#T*&,238S7@E=3(HOJ4&?R1O9Q?H<@$[-(G/%#ITV ML5J":L3*I$ HG;, .LJ\L:ZP:J./M?HDL2B6RTRWTC@'H+-2U.J8-EM;C"8; M]G25&\?LU%D G05+IV)"4RUW8FIQ0(AF.L:)[#D '4/)Y :=66&"];C^6MQD M2L1(8L\!Z.3H\GJAM+.O6<[TIEHG$.0*>!ERO378I/<"4UOII6M7)2 M,'R=.1+(OZ4D;#=>H-:PD02;56JR?Y[ MJT"/.8?-"S!!!J.-)]C,&L[2DLEDIM-46VW?"R8H1-]Y%_H.=L]*_!!^Y[R_ MD0SA1!Z2+O>$J@K)\L$.2R%=0C46TB548X].EE"-W9(N[\<1N6P9?W\@D=?T M]U?:@:N@[R2_%=S(C=!W0JFYL=0\#O3*?;-K'A=])V2!+\L"OP>^@SU>X4%K M >^9P+\L$[Q+%V97X^\'6^@]T@(>+XGLBHV.'JO$Y/,S@-P+$?@D2YH#U9)6 M>=.LR2TH1>Q&,8?"6M"'2,#J4+[0'RK(IAHJ&CT>SY(I E.$1(;98)E==?'A MA #_)@8UOCYSX]^?U(7EHCREN=B@LBKK*[ZUH]<.$$\BFB 349(Z+3H+54&H M"D)5\(;TGM]2!>N$;AA3.IN<;5NY U:SAJBR7 MN5&WX.+TT%$*)Z/Q^*6RBZ_G\37Y=01L'O@>V,VO8+X_J@+[84M^)=[Z_139 MFVV:BBM-0+)<);8RU04=JV!%;CNJUDFFHB9BNQLJ,<4VZW0F,^[D\L]49B-2 M Z+-.A@_\2@>IZ)Q*G$[>^:'"4(H^]]?]M]LQ)S*?DM9U;)K>4!PVUV62Y0) M@-&ZF[3KU M&M[*ZIT1Q_?82G\ZI&VLUW"@@G":CB;C8=PF5 >A.KBYW?.".AB6.(//D+4V MMBTW97*7,A=QZ<-UH*^J [K!Y8N383O>R5&;;KWY7)F.^F,'-X@@:>#V7%(' M'S!][LGI/6AJ7MG"^8GZZZN@?AR\)0U6.#(4\-2\I*XDN&KX!EXS8^YK/M$3 MO/<6/I+&?+,!A<0WJ"O-IKU=;QK,9#:G>JE"*]WBB-[M=*4VCU>*!672Q&RI MV1JH1&6T[*\=:"$2B]+T)2\Q5#.AF@G5S%V0V;Z=FXF*ZS&XRO#[CR>YDO$F/Q&YQ[4 2Q>DH?6V+[,'V:+$RQ&<7)CU"[%#-N%"<+Q*);$HN1M,!=# MF0YE^D?(]+6Q?EZ5Z5I^FK&VU,#NI&L=.SY^YG8*-W;!?+ HD6"B#'&IX\T7 M"PJ5)=.,N' 3D85NP-6$;MOW=-NNK9I"]^KVMD=5.@$U.Z/W5*RDV0+1JLSL;CI=8/CX+O_<&"81X#*P9X#N2]P$ M,R5/Y)2N)T5=$DI<%A>KW8J?'46*X$Y)FI5H96#X*7 &"*C%(5% MD\REJH3'0E8^A-5QOG4-G.7[X"[?!/73@:T=RG1"%K X/^1YD1J2%$D-&8(8 M#8'PQ@E9I'F*Q(^!;H=C9BK$6QT#DZA1B\X2C5&9; QQ>( *\UQ MKJ9GL^E9>U'>\HTA<3IRJ#;7X\4Z4^-LB9P-V8:^X%MP)'WR3&'4SYDYEIUM MY=Y@V=TI&6*U/@>%K)!"EQOWJ]794BRVL3R5VW7XL5,Y?#A2D!-8I]G,ES!Z M2W<&B79FCHEN8>'AR.5PU=V6$Y36Z0EYS%(RL423'Y^#0LZ*NUQOUMNE,;HR MK-52E4T+,]AS4,A\9<+T.2/?X&PNOYE@RYQ0$L]"(2^RC6$^,1WL9C53,\>" MR0KCK9L6+9?NQ@K=V"K- M58:-<_1?)91=>H5K8XY($$R_.3E?Q46CMYTD<\5<^NV*I=KV/*8E/AQS4RB# M5,VK,YS&<9J(,XS[EUMC*P-*2YHM90U]GM8A,+Q@]11KD@8*30?O/ 569AOM M#5=8[C",7N=:S?S.V#7%AG,T*N!)(FM=&#>$P_#/@JV^J*&1L015KVL?T$\1 M;P=,B'V_,/2Q(9GF32&N83K)KW,;7]#J[OM="L$>56,-K%5D-9&=H\X+*455 M)?$%!.QY+O-L#43[F9M+9&XCX-:D4+\58OAK9Z&[B(CAKR("S*T([ZPC,D(+ MB0"C3#A' M28P+3GX)'.5TU@1\&.%.8O1)TO?)Y?"\7[]A#=K[D)">PISOQ, MM,BSZ7[W@^TDGC Z),0#$ (+"?$8A,"?L'A(B$<@!/&$)T-*/ EPD/B00@1 MZJ9'(03^A(WZS4'XO-6_6G0S*]IX:M[MB> M ^P":^9R5]L$ZX M[)YX(IF'AC&&+_ET)/=0/WQUT0CUPW50SN-/!/&E]<,5H>V_F8A<@3L<'_MK M<\>[4>_?&)Z^:QK3^8L02X^(O"6]>/MQ-1FY]]K?U /B=XZ(>R_P'DEI,'AP M[W5?)J?4 MB(_[Q0Z6RQED%,/)JV#S?SAOX 8LSA[FG7R:!?;-K9'/<=0?PN2ZPY%S/2/K MCCH8ZMT_OZ09]6*JGJ-,G%R\,RHVB0FC:BHC#C$[UID7!I3 QA+ZJ$#:0@+X*]9RP1&#? JWD]O) M @DDL'GB\2B)):+X&0?FKV\9C;)X1>/'TK?QSNYE]/R\=;_HK-X;&^'>^_)B M(.O>&_,XKO$G6VB^FCMS&D@=@:\_+WD!:RUW8SN721=;>5B; \PS)HHQB2A# MW 2?[J?JRU!OO#=D=N^->1R]\+YL&3T_F4&_ MR%D4(Q/1)/U[&'AW3WZI2I8?#XOPIBE9__E357A'$D+W- R*G2CU>P-"W.Q6 M\MX+>QP5_,FF&]!!-4 S&*@'FWH.C70M=4KK3F_'8&F[SNVZ!AO?K=@AC>)K M5#2.0["_F_1=^!'JZ]M*MFMNW7MA/RLT=RK.8.'_]T?LC%P/V/Y\JS2D1:?7 M+,V78H<9E5H-(-<)B'?%)+$HGKP8-;\!MLU;Z\'?*)DWF%1[(D7XD;Z2(AJP MWD:\RFN"Y!30&Y*L2H(EB?!JTX+C!$&?@\EL 2D@DR"O@H<#W.]%S(DD63I#$.*5WO A(<(S MXF<1 D<%4"$A[D\([ D/#XDK4N+]]P*7_8>P*/;1*_YN8R5_L4VX0M$\Y5RH M?]VR1Z]H/A+'H[];*1\JA:\M#Z%2N$XM-/Y$W[==3U@I_]#<$?_:1\;O5,H' MCXI[IZ%Y=T5.FDE8\OYF77_O!=[C0IKX+D6R#]N]]JMV4CI;#0(U2E6RTB\V M4=GTDF:B-9:SG59+LZA9O&#E1+>DG<"C%!6/8M2E+BJADKHZN68R.O9#V:Q./1!/%[_1_O[DO[ MUI"7;:M(80WZ0[G CV$#/5+!Q,]IL'N+M+P[V$5E+Y/_956[6Z7XA5XQ+1)'%1C+]F3.F3RI?NO:&INR\UK(1ZL1)*HYI=7$Y5QUR:%HW.0#"W=<8M9?^,2J@?J1'. MA[?N+B:?&/^Z^UK#$JH72JBX0:HG:QC%SY18;-JPZ*3:H]P:]?>74-VFB_9; MRX ^E%T73O'%*;[CPOUSVJO"RC7(RHH,M))F111-,"3>E&"UVJ$9;T9D0Y]' M@NE2$2AY$,?S^,-X1#$CO&49RLAV2L3 (%C\!NO=+,-V-(+__#40-/3G'IN& M,HI^;DIB) ?Q01>J,[%(SH#=:]/\%BP<-;)]Y8EE!4S)VD8ZEAO-1<_F(VOP M5/ .L$YK#GRWB,P+B!SP':RA['2-?[I7AUOG+Q_I:?LYDP5J&-8MPIW?2KP1 MD301T.F$_E$T(NT4.D9X$3X+ED "+EH8"J""\V7P J"/P01U&7W!TBU>W5-1 MT$W+(9JUUN$8^/VS!#>?(H"3 =L*$UX;2PA'%A9:VK ]]CCP(D,R;=6MQ@2[ M'F1W. &P*2L%EFZ:TACR!MQG//$W?)X C@%'!/2%Y)Q%IL^%[DK]X0=UG; F MU/W^:!OYWT\VD-TPQC"-=J:@L?ZV<.ZNI+;M[4)B-XIY87!%LB:ZZ/XNB5G= M8$UOE/>@"F("_R%@*98$=S%EFXHFF6;+V503O0H>M<.6N]\NKK+I/B'3,HWI M>+&FN5)QW*G3L>UTI:P_&L"I.?32Q@5$A+)NGMCQ5=XPAI8ZW^46HQ&)T6Q" MGE!%5NTO&O!^*T[143)^>F@C^G]_@BHJ:PI%.=?MS/-=2N8L.I%A/AP6!Z;4 M*X30*O)@;8VV&A93I?6 K&B5'/#I_L&C"0J#_YP0(@H%>R$)L%9!W4;]0^22 MCH(J QY32#FA@\#3!K 4VU0$1-T#[1PS)2&F;&*.'OZ51_\9KCA1R2:W$Q;; M]I5Z;I5F[=Z*/9MU]U&U[/P*'P26#?99_3N8EN9^],<_H@(K,$3_6$#_B8 ] MT*#1&@%R$#$GL"K]=3V445:**"&F15\QAQVBN.R*V2X[H^,DN9 ZV2YNK[\^ M[Q+OX-T]XWH0\(IF@PG5_".A+ADIR#PMN&EGN;NHQ)YKN%+O=I16K"(DRN5) M1V7_^ >X>J?QX+=Q\M>S5H[=&J<6)U!B)*A@P= _GOQ]^)8XG,S @E MR'V$RXUR4?1Q'='_'-1'^?YZS/<$D%,>6)5;ET4@_WPLQ9SR*UX&+_[%JVM^ M:WJ!_>23?Z?SR_?KX39$<.PI3OT[$O@9;L?)7D*DA<".'8 MN%\[Q%OP/GRE M#,PEC*4O?A'X$X1VF(-?W861^%."NA&I M%'%('<$^:_?&1B0$WTKW8M?3;O M^54EVD8."[ VH7A#<\7G6SY8/?82KQYN];D=!*PO.)H#J0PG;C :LHWVABLL M=QA&KW.M9GYG[)IB8PB'XK=@\K/BS2);_!5[?L*+X+0PP>Q-60$*":BH!6]8 M"J^JVX,_ *V(5"M$-=%'X*VNV0R5VMF>#^ 87X#_2H[9SB_ YQNDS=7/-YR1 M@7HV6\HW7\_W *F[BW%/("T_*_:,\H3IU*;Z)$OD>VDF=1"ACE&?U(*$#AQ# M5M#'X&^"U,?3#H3\^@0,UYZ1# M[IS/;\ZW3!A$@+8,8!*GG1L/>,>*>.QF.N[E"RP'=#%ZB6Y*AZR','D0=CF< MS>>R''G BHV[LZGZ2W!9UI=KHXIVC2MD"H S)3]R7S,L<,>\URHHU)ZQBW*\^>*P9_2&;Z#F3N=\Q"+D5O)S.%R+75 MP717DMIKH([(4V_/IS(@+] >T&1ZBA2 8@(V#!QP>%H%FCYZBN/3!?V+G"T7 M4UU<2C?][3Q+1RO9LF?L1&K-2DNF4)P-5OIH".C(/)WF\@Y9DA MO!59\R@@!QAK#ZOF!PW]9!,?3XT_:],03[XC$K3&PNN+<(H_=8H/==/PYJW\ M>!""]ZYLT\/U,%5MS>S.=CFHL2,M&U\/6*BZ_W#T,6K#FJF3MZ?CA%IM8Y2**4TC MNZW%-':S@B-/WEYO*+5\;F;A'7Y8;';-]20YYF&Z\)DY'JF:W9M-"+#O+&316:DP7.8EFA\SI2#LQY[/=Q&33Z8&3840W M%QENLAXF3T>:R8DH]4AZ,^NERGBU7]KT-+4QQ+'3H5;-3&NQ9V,$-G2K]I,= MC&E8+#S33X9.,[%EU6BE!MQR-&

JFFN&?PU#,$72:36(],- 98K2MAK=)" MXAHF"X>>4+0>7Q&QMI#?8K'J4,:ZT[B2L-9PZ E)*U+<6(G<.M4I)3JMZV5EDJO89#3R9 QOEA0'/,:B*WM)4%M)$SBBFHNFD;4AN\,:7JPNP/+_S26%@)LI_)K+@6UV,6>I\H MQ3+@T1(P&+FGP&(PSGRKX/]11!E[PJA]3/F1D-^>DC\4N/C1 MZ8)=;/$:TN5.=,&?R!^*E/C@A'E*_E LT4>G2ZC('I(NH2*[*6'>6VWYBG%\ MMSWX--3#URS1K[0#5\!!I9^2S$.#VIW9O[? HCJ7+_XMS._!WH5"A3ET!XY%XHNZ+LG!E<;@B(.AKEF_( X_+ ^^&_3P.I]VU6O=TO65>$Z^F MUAYL;7?IVGB^!_T]M^%*;1O)!X7A"R[UYKB97D7"B]0 M%BEEU^E5\=7S\X1/)ZW&1^MH7IQ$SCA36-,6AF.\,N>RT_@4:W6[M6RZ6$S( M&WC/'(? 4B3#1$GL--GJ:B?>@\E%J!Y"]7!EW*G?5 _*&E?[5K%.VNXL1(;J^!>J#?IA[>;PS=D^]3MJ+" M-UX#XO/!0B&?J,SNN>;KH>:]%EK]?KKJ8Z:,)S.NOAIVC7Y&62_I67J:GW&K M_H9*C#X,L_=N?=4OMK4=(373LUZ^KN0SF7J>JD* /6#.$!!TB8Q2U&E%Y5?P MX$-Y#^7] 6R3(WE?;=I"E5W(Y0[1Z*K,M-%.3_C/LT_2"YDUNN*6[]0*67J^ M2[:L/TT%#(,WW]H[N[;.^^$NVOO,'E2& M=3+ 58:#UF!!-1:;1:?7%*MS)9=M[=J?%\M)FRTK-7NNT5AM4)^-&FU^H[;6 M0PK%?93CT&5SIQ&8#IFE.UNTU"]4%C.T /RE.1)-)\ML$=S**Z6 /0IXP MMZ8ES<,P3^CV_3BW[P/V3E!T6DARO%KS3FS>;[4R10'K51.%!6_8S6;Q\\(] MK7%;;P]F.VV6,ZR4DN/&V4$1UA0"BR>>C%(D'<435!CN">4^E/L/&"XOR_TV M/^P8186Q9[V\,DG9K67)LC_/=%F,ID;#?);^/WM?VIRXDFW[_?X*1?7M%^=$ M@%L2(*#.[8I@,O,\V7PAA)0(H0DT,/WZMS,E@3#8Y:H"&]NZ[_4I&R=2YAY6 MKKUS9R;;=^BUNBJ(Q6JMT :_YSR_CT=BZ9?\_L.G?9K3*3E:R3'!-AP31:@I MB!E^L,)<4!CV'S#A)^%$D%DM%DEQ8W1-B1H@9;[V,]@)FQ'.: MRC1J$U$9[J:2TI3OEWWY[;+(J=D@TU@SG7:_N^[FLP5V4E3J^/05S*TB#$W" MJD^3%1J@F2RH%[G4-TP%?08T^TK0]7MTQW<9#ZZJ/7[ )!+1#LW..LG4*#7- M2MS;P56F6.0RFW9"Z>?JHVVV@THC$:W'*9?BQ&.Q2((+"WY"=P_=_3>9RA-W M5WN3AM*V&B/%&:2JTWFF4E)B;Q?1[!0KL\C1];KBQ$Q36N5U:VY*X.ZXX">2 M8!.11/*R[.3&V'L-7T8R,U21DK6%::S(.;^7HR\W-MHP9 M#MEOA/7O/*P<< MS\_S)%K-2K183O6C&2E>=Z*C8F'R=B3([BW,TCR7*O91:L2.S.1ZO-.E<9J0 M()J#B.V*BV WYBLA9(20<2O'O'> M>:RW!'^_430$3O>TX+&5HMME/1O=*EHN7T[S#3JV>'C#S6'9&EM02X^Z(HMC MCA?TAO]XH7'&VY@:+1CK=^^WKLW\9W!3C0::K]W%#&8IHP75735V5 MVV.&(50HGH@P22829\.L4>CGH9__"1'JE.VJG+/X3;_(STMS59RG!_VW"WET MIK_6B@DST^>=/*NW"EO=J&:PGV,2$TM'DBDVPK(O;0K]8*D>?&$P+PB.YJ@\ MOE16Q)<'"S*YWR9,_83!7!C,O3-7R1R<,Q_P3?A91?@'@+6,9H#6=N3S9R'O M#-HM)WJ^BG@I00\?V>4V.Q^T)S.)#.7;CU0ZPJ92D33]TI;6,,D3XD*("^_" M;:Z("VH_1'/Z)TCDOWAT8 MH704[A2[?F1W#!\Q@ _1 E=<]]/7=AWY+T/EFZ9\&.@>'FZY+VAGY+"/%FB:/S"-&T MC&2#+L?H0C.C[[A\9_FXZDL8(8 P)3 ZI']24_BQLD:YE^Y-#A-&EP@,/S&6 MO?)$R'-O"U@;^0 G\0K9Y M%2Q+TV2;U,+C1_$+H%L;L L;J5OJ?]]_?HHF7F&[N&KM>\X=4>XPH+V][C972&[86='2WB2;B9;60GF1@1H)@FSYS?\H=U0N(4>-EW8;_6LA!(UY[Q-B7;,#:D693E M6 ):V#*&+6B-OW]'Y1T3ZP;TYJIRBWC3HI NPE/.*YGD#C$*1"ZN+.@,2>Z. MF;&GK9X1U%VG]#@HB'&[74!%E+*=F1)/_7H!L:NZLY@#\9& Q++>1>9*%M!3 M]"':'#YL=K%A=SSL.^EQ6;/6[?+#5/KV(QFAT[$(DTB=Z)-([-JR8H]DQ8X+ M0J]"US*J2G-=S#^U",[>>U<#RV70R MDL2W9SZ15(2")R^0@"^;5K<1# _",[$9M>8MG,R&/N"/+;<78-"!Q0,*;19( MMQ!I^S&-U9\C@\,Z*^I2:5C+-1*M1SJ7?U@H$Z>,;!U$G8BD )AI^E.9Y:NE MLHTNL\9LK'<4OMZN+]:Y1PTEVE@J<197N9U6OA!L_1TX?&%._P:&[SDFZD$OLJHA*!X[G(R3E0PWTSOU;4&+FZ7-)-I^2&X]&R6/R=@O MM!OC9LPW"H$I+:![ #SH8A2>_!J\/O9)[(*YGD?@4X!C@:%3QG[L%%8.P_Q# MU=%&%@P,AW.P)_ ?L"CCL,/M#V M\9]!R=(,B GN"OS)5,&',#^96+(H\R8 /YYR\-(ZJ>$:PG]-^,B3 II&J/Y= MYH[Z"\N"I?_)#:.!/Y(/F7_^CA#/Q"_Q1!5\?N.N>Y>[HS*2PT>H+GZ8"'V^ M&QP>VNCF#D_"-'4OZK_P:+Q6+?RM#8 M2Q.ND\(OEFF/FWX'#KLR0 980MZ&#&.],6:%>JI'L]F)M1R/DM5D[VA"BW*O MI11=Q*^Q5CM@MJ:%FI9F6+*51P !LNXN\.-4=0N9>7X+0A9@Q@<\ ,+-"R"M MLS0[G>+*I<>ZEE&BK%:_;R&[2=M S)@S%!ODKJI8KB! %?X!G0"1W@*-Q"&+H.%>1:( M%2KD=@ ^P[9!O@@G]TSZ^_>\.P MK^RF6_FFC,DR?7>:SJ!F #N\Z2H"XR?A+=>-I9],]["O6%B'61TL8/GXN9TR&]+2!7A\_QA M%CT+,5&ZA)AV6VG3K%"=38:SY+"7 HAAF7,J\C$&_O]Z)@LS=QHT#6 ZX Z! MJ8-)_F-YH((C%1=8]K,&$M_2T??D[\W>>&\ !*\Q' )VX%G3LK "J,F6" S, MU$;8RC&J1@*P>C01DU;[:1B#$_Q-1\CU"\L1,'2= 7'L.40M\&*<1H%O(AV0 M%G='19)LJ;P?>3;P"0Y@DQC<$I&CODUE"$)4<#F> M*% V#B1,/\+P+0!H"%$V+FYSM*-1Y?8?[X>&9P]3Q@8$705? ?KBH!W,$Z)L M4!EM(H/H8-KX?_]B8[%_\*SS#+]QOY4)L*4 0<+/[O8+(ZH,#S-=@?&J^Z3N MG"3\"D@-'XMN"];^%RB1,=?&H/ V:><23XBR=$ M/"\'52@#8347ADF$R8/;K"F/I,"4@:5&G F E!!F3(:@8Q8/O-5X7OT9L7.@ MQ89+_Q%YKEO0Z2O&USPI2=P@P7$[8++["<$, MS8#_&IAXP>/P[1P=X"T\$I6>+O)G;^)[S^+_GH_=@IL9QQEI:J\SI #1D.;MI#PDS' M2U*4ETJS0,S^>->R/2.]0=.IFS?P^S6535 H)JV_TKD[\C 9YG\7L'#8\6IJ M!E)$X^G(Y*7[8HSN1WNU8<49-9$@2N?(677\AY ME%MY[[ ?AY-Z4]C<]YN[5:P]ZK %03I*/\5^@="=[^-^H!"]"/ [Z'I/)J)L M@$TL$[TMV^4>D@HGKY?+>J.T7N: 3:33=Z=[R__M^PLB+\6_@7G= 4)3]VAB M.ABU0=8IF"&'T9+A7F0.T88W [G3$5Y+P$YS'7VS8S:%]9UZG;[+J$@K[-NF\ X0 QND_.Z:3=RA7I5 M'DM*,9983-B\TM3Q.+_Q'EU8__ M@__L,X$JXDV\ CY[LNH8PP_SUK]I^M]76<46""3ZO6?C_@+^/IV42+JC(+TF M__V?8.^YG]&UN_W'QJ6 MC(WHNXDPTUPA_/2CYQ+%V,;B.P09',[LPJ_>P.+,73)Q)54]R?/%#HKY/YZ: MF=CK_]5KYIXDE]V'X)_!],!SU:.LI_?1MQ\]DLL ",MA$"$'F'JY9OY'0.O/ MV>JQJ,])$$S?RYYZ]/VE[+"?]?V%'#%[#9!U2LX7,<3X6/Z8(@92IDPZ>?C6"Z;N)UW4LC!#B/@Q$@HEL+S;!R4'= MC1A%ZAXB.KPH[C_>DTS?QLL:.%5UW-6>/'> @ 6ZV&WU_$ZZ2^]!T1R".(SK M)$V'XX[((3['=R\=>N R+4029:_/)?YUDAKDEV"(\/2_70K(X_()DOO$8W 6 MN"?7RA'#),ZZO*UG!'YYU:1>7VWFT:ZZ+2CL*/&8Y(1.[7'4OITD\4",:MON MTE0*W<6*S2RBS6YR^KHDL;7/$L,D;Z\AI,$1A?4]P,;/J.J-E414@L]6:DY; MI'L'1=WC+I(/ X3[IPIE'$/>,'&)[5<'TUR7-Y?SU/2&LOY]?;&=5VIBN>\D M),5A\Y6Y88)"$[^@3S<>W+O<2>[=!91@ZAV;@ L(5N3*H4E.*VM-QD;L UX",HV!VWT7'7 .;A2GT. ,. MO<*AZA"GHX-E/74@&%F4\9YP5*$S[%5[WPEHV<69BGCIDN>UD@M[/P'AY MU2N>X=9$X$NDZMY _1T^&6^$06_H M"M:&-3J\LJQR"U';T85I$KPAEJ1(F.63C"3RG%[2#W4TITD#][/&F&-NX'%+%-GY@OD&5$<%Z0 MY"S(W]P;/(_<1C LOYH3%]7BO[L",@3!,0_J\5*5Y\0"E-45W;[=DS=XZQ9O MF:SXG4T+;Q9TN1:2)D5>=(1@BXD$!/$ESDX#2F*M!^.I&OEH'TGME9('5Q5L MT'<1 3C@7.P4V^\>"\__'6(2"AZGD;G/+= ]TJIK_NX["0+B5*CHV@CN*SYO M7!8Q"()UK< =##=RPL\)5@>#_9BNL_@+2]1I>0LU-$S%\H8&L0H.82#F<:L> MGO;L[X-Q.R9>ZB0%+8*B&VL5B9(?M2WXK3\NP)PHR !'A20OX%5M6H#>, )P M7CP@&1NIKB/77@F;"D2V$?<3LLYG(EF;., A"$IYBZF\*G@G0L&#<*!EBB1D MVS\("]OR)70J:7ZQ Y(NJ?RZ\.(:I398M@X@5&@WM\6"US\8X(S;6+ M7^ :W)A-XSH\4N]S^*56'A<:%< O-=M?50:-;6DE-<=//=!5X]IT^F MGHECX;(8"U,PZPG @8R))RYL7UVN&]QYDL5+&V0-275D# M\<) <8@^12)Q.9'<= V"%PP@%2^1^PA6!R"YJB(,YMZ*/@:OPR1XUE:PL7LZ M=7V_K45G:_?=8/MAV2=X$"P#C.G@^-D[B#OB/GAK#H*&GRW'PLT#4E?Y!0X(W/[!N%DZ2A;'\/ # M! ;TZV:BC'UB#=C)9@W-T6U9]2O1D0=.U-Z LT&<8 MC$6>$PGJ$'?,_=GM'>#E5%9]./RY41">@[L%LB7P9!*#C@3&Q*:",U< 3&9( M-G_Z"DQ)O!)<^(:'X:38X!2,2&4+[M)19<*U2H]2[AJ3"VB'7PKCVD.A%=W1 M"C]OY315CU'1*\5:?VB,&U&AV%CK6X?6 M;*Z9Z%D-9'2ECRM6<;TN3Q=9=MGOLNDM$) "SL;P(-'" U2.D.\>9_/?A9'0R9/ MZE:#M>BJC%9X0>"H8)S,G/Q1*;J7AX\0-0G()"D$LFZ'UR94CY*[VI#W"_\D MUO-K:["2#\4S_R>?62'#>P=E >^IW"_8@$IAUM4,MU2\H&,K"M:*@+/(N(0) M[ 3:V1Y_!"LH!WKAK]O@%U>AIR+8D3]OBNXF$0^-(/LD1+*#., M%ET^B@.Z@''L+>'!96F7]&%5ZY\ZID]J6"I.QR'V0= M)O"CZ)F$R4"+W.[A%60 W!ZKS?P%=<( G5R0%[ (+W]&@<;< 43P;5 LDUF M^R=RP$)V5(P @$"\:P*'>5@S='?]R]WP:>&)'X<=KL# "@]:-/"C+(04Z#%( MT%"=P_#DH,5BN%HX)&G@EG?CT3JJ?:ACTI%DV++7F8ECXZ30/M"477GY#P%= M8$B;(/>E*S\^E''L@VOQ3C3O9C& O7@BVG?'5?]1]2&5@PZ;A]1)%P:N[C-1 MQTWS[G/<,C_>G,BV+T^\:=!GI?B/7@#KZH88:S#P9R)'"P%UH'\ [R20+H"H M#&WKP;7HQ6DG.U&(C7DZ(F&O7_X+K&._%XGP#M U^D M9D@EU+7B (7W.NGBC\)9LN7&R 7H\M8P]4.[[?6HH M7W92"9Y8-27_]\+VK6: 9K@Z8I^:/EXT5@FD=-SDC5O9>##50U+@62]XE0=X MN:$C!#R/^ N(EI[XIPP:E3DE3' MOV$_U!S-RZD/UI5<=]99Y.BBEBL]W*?'=8GY]15*OY"L9EA6CC!5">G"-N^* MH(OAT1[PJH/.+C5)I0FRVAV!43@V6=#C[7HV.R&D__FEIH7J6!10]=>*\Y=9 M_5EQ%N;WRFJ[SFP5K;9DG$Y@CAZ//RLHN]5U'K+EJ:5P MF]9JBIB<%(]E"(U_7E)_[9T!;?"DS&O@B7YN;PGT&GQ4/J0C29$W(A60?T=< M,4\1CFK=1+J+PRCJ_@ ?18'6F^(^#?^6(/?$X7 7,#<[%$RO9,D W+'4K5?# MJ1+*1,S1'^_1#"$#HD1>C'B>\SF1[9-.CSQ$?4R)$)5[5MY_Y";)UCTT<$ME; MG+AV#\#PDM=/V018"S8(WCOAPLTAO5)L/AL^G%Z"88^DQ[T5%_QT/X3UEHT< M7Y@'4AIX:)2$"N@P0+?7O(ES;6!J>%;V@@@AN-\51 =\P#I:8//4Q%LS:JH: M:^NP=SQ8Y_;QBCQ389%G6.3YFT6>/)E5QB*3Y"8)?C)&=$P8QZ?)])A/"8EQ MFD4\_#^:X[C$-_>MO'^(5"=K9QK9WJ"EY(Q>JU/5NKW\O#TF]Q\=M]2G_?5@ M5TA&%0<-999K+Z*%A31F3UMV=ZOM0VU250K=(7_/QX8S25QGQN24\>.6ZTW" MSG6X.$-S-KUH9I;;[*JQ'L?']-.667HV[-?24ZO0C<7UW6[IM#?K-K1D3YZY M6]EFVF1W_6H&Y=9VLMIN%G'+D[$W)O&X,XEN3'K)9^];#T:)6;+2.''Z]CY7 MT++3_O:>WO)&M+3>);*UQ1KO&W_:LK1,BR.M&DW3PXH>BZ]G#59^E,;ITY;MJKZ MM%%$6E61JYUB@5OLSXI*66-A/-#)?6^FB<;*E%-;4:]=N8&CUM:92R M@[RNF;E^,4M+O4=K9(\S:VAY(D_]OC3K2IMUA>8>.#$O&ZBJL6M\R<[)ZYDY MUT)Z1G7Z.=&<:MF:$!?'Y-ZMD_>+G<%NIW;F))+"JFQ.$WR8/X)>CQ),OR824V8:5J<ZVM?LOI2KK;;U M-;0\>7NW-UTL%3M9[G=[].IAOGH4)SI^YLG8.S6&UC+;^S:M.=O,1*CT7H]$VZZ0?'HI9Z9Q# MTU:URJ2*;*Y0'33GA>+]:%>NM<\Y="F>:'9*3&/9YZ;&MLDQM%B,8]<_>7LV M+23YOBZ-%12_WZ6C>1UI#^USKK_=S@4G,5/YPG;5N^=G[5VED,3//.EG/U<0 M,@GVD2LLLUQV,>$&W"2)X<27YZ]7[;._5+4?>[.J_9O*71SUS#OPC>2/W,3$ MH;+_L'8NRI;@D"4&ZY"(\*DQCBH,VTTKJ5L_V4>:R,#0D9&1Y$\7J /P+I,MR#T3(J7Q]L9_/)=O.J- M-WJ[/7TFY"![#^"Q(G+3P^[@#,<6#&V_/!Z4T;GH 3_*SRY[FY[1%.)JVPH$ M)UY@XN=?B0R/$CF!>&*_>9FL5[A1@M<9ZZ@[7S9+]^S2SRN"2=E^+H \+B@B M*67X_CZH(UGDP^H+*1TX5_#P#EO-;UL&#PG M"^]%H+8\]^#_GQ M^3:GQSJ0,C-X C[*,%!XA[^JROS$WY^$0Z0GR>' *F(DB'ENQ0E.8I$C0/>Y M!U[4W+4)-ST3&/IYU#M:Z@PDC=C!RN%7SF M)#,_"Q/<]724!W&W5>$L"5ET(NX5>L\3:-O/T[LOIF^>+2A M7ZD4.-_077_ZZZV/T?2ODC\Z(3#G&9A ODK6!?QV721A0SE?;N*M&/AMR_B@ M-M3UC2O+J]C(NS.$2 G]ONSF<."@E=W^TE&%AWT [L*LAPV!HU* MK?LRS*W-?BRN^?BWFN,^YH\?+&/=C'V2994D?F-NSQFV^D;OR_WZ)G M"W)RF8489Q]60UIK2]$*;U5&F3DNR(G0*2Z2C)^6X_SM'HWQUF>.?A$3$G96 MO2>FK8XRU!J+:*[9*(W$VS:A?MK6E]'B;$ 7M^515&D49XMQ^]L/-A)+@AG% MTZ5MN/-'5FG?[;CZZCP=?AZ4%.(>NN+V \N?$HSGS^1-6 M _N>9!*-N53)^AXT!O>\1K];[OT1 B[L7%CHN_]#<. X[^_E_''V6W"SYL>K M#('[);PEAM-5'-OTW^H]C7'%]-,[,-Q5$I9<>/'\?1:!?'W@^3B:QPM3OG_X MOT?Q71K?W349O*/MIVLAWNH4>;'?E)^02A5TY360I[84:/CZ6Q@"2UE_>/4( M^_*U6*$>WD@/S!W+A8JX!470=_%0$3>@B!"9;D,/@$S)4!&WH(@0F2ZJB)]? M'_IKG/5-1NT_%J=0)Z8,CRDA=85PK_$C>=V*GC[W5Z1T3^8DTL?F<6&(CG[M[@+,?4*"4Z.7A(4 MV+"W+>3(*%-'QA.<.[V M&#MNVZ,^M+&08"=TMZ_M;FPX5=\8L+Q"J2[).OWO>7K*_BX]99@[[L5\R'O3 MDC]E\+=I !\?%W^21@LE]+/\UJ>1T._-)\%%9T% Z&AS^!O(*L=;LTL!Q7N/ MY4_T?FZFN7B\]\[R^=_+$<&W'TE@ZB35"\&JCMC1QM!+'R!V?%WDUZDKS/:* M17;83]8+N959<69+H= MM/^@*.S0QY>[B#$)!HO_P=F M3;62*Z22A1R;S0];@U7,%/%FR-BW'VDFPJ9.KXD/L>X-L"[Y_O()L>X26/=E M"F![TSC#KA]RQ4)S^I">6H^9W>/@ET\KO";6B?V"U!ESZR(=S;90IJ=LNJT> MWM/)??L1C[,1-L&^ '8?(-F!M[PX.CDE#Y]KB$L@OUP$^XD6*_^X(OHCA)V_ M -1DLPW[3VC2GS$-\S5-.N0>'YM[^#-NP["1!:.N&>"WG?WLVT#V&1XB27&> M99Q>C):[$UTR8HMQB_=.8F#8")<\/:+ZH^?(6OA453EP%M?AR"[O#@QO>^ZG M#"[?LB#BZXW[RX>883KMVC#OP1>,MXDQ*T.@*N<"U[FDVFPGU5!VKBO11->H M) VFGB7G<<4PP-,1-G:Z.S<$OH^=+0N!+^2WGX_?_B+P%9K&J"JJ^1F]G/;I M7GK-:(-9!H /F&V2BR02+ZTF?( $6PWL]>.G'SYKBNQ,65.8)@CYXZ7YHW^A MTFLQ%(,&C+1#3N!N3H?\]@QRRGRGON7+[4%AZS3J[7%MT^7'^&!6H(PL$V%8 M+I)*IZ[&&C\_&+UU8+A^+F_/XO>I87>7S0 8 M<:\$HX^9I&RZ5PB$>'Y!H=[,X@>TLMK1^D$N!J&[BVEN%'Z M&5Q7,QMARC@/EL+'M^U>OY"S2O/,.$5(9B26IL.LY/6SDN^-"R$,AL3V Q#; M*\*@4XP.DSF6YFENV5%6\$TAE9 !KF?P^ '2%+V#'S'O7?:M3%][BCB,'7P MV^<,Q #%1,/!)TR^"VI?L#+[O<=U,_ E(BGZI*BJ$L%\\NR&$L,\'82'#?$<(ZZD/ MDZ;66Z<+0VG3,9EZ*;/YLZ]GZQ\F0?+D#K P2Q)F2<(0(\R27"5+4CM@S9_&&5VV9,XZMMDM M(#E9;&:V392MD_NN8]]^Q+@X1!IAHB1,E(0H%B9*+ITHN2"*)1KK26\1BSN* MS,J3:+,JQ^?%#$8Q#E LE8ZD4B]MD2(D\S_DCJ\K7GIVYC:SYP%*,%3#_ ZN M-*$3]&NW['_<6\JX+WI+F0M2=W3B_ 5X@>\MWN5J(#8=ZN7V],+@EQ[#;U$N+8;>HEQ+&KZN77<]HOT^-W$\(;7GOP,H!?_RZ M:\ID?UE"XK?O\DK][?='/+HXX([^7+@=Y1+Q)%701B=25;OD*7>HM7.J- M'>A/;AN)I3Z3 UWT,JLK6TKJ)X;R=C?.?#H;^.,;EKCW+@H['7,'K9#N7.8H M8FS9-S:\5UG[G\1;-S;>2ZQ(N0'++9Y=%1SI14\<#BWWW7DW@?R0]OR^DN7+60=UQ#'S-CK_BJ9WS!4BRK2J]1 MJ75?IMEYK/!0D?M:7,G\P7[BT\ZXH\6 3>J<1$Z!072<:O= !LB&8AFGT0-&./ MT.S+E&0).ZO>$]-61QEJC44TUVR41N(MH]E#-9\;I-<#2:E6=Y,ARP_MY23C MWIK$1F))0+1X^J+[VFXPA9%'"Q,T0&3G7V+P6:/"]\+P&Q/#5PX60X,.#?I3 M&?11P; W5S4<#5XE7+& ^+75PFZ[_0H&^_H%M3?H.C$DAC[O3>2;P$T,EU9$ M]^,B*R]/_ZK*.OH.5H-,_-/)G\DSOY/%&WB/RZ,HCTA1N.Y<(NU^LX#ZSUS* M5T[@$]M8D%])'Z(JOS4<^_M4WB#QG$ #93!N/WVS.*9&?]15]US>WE(9X0MXI\/%SGA^H60HHD?'&X5;\O T:E'6JPNL.[C1+,ZD(A<T,V!1[H/;B!H/*R M1O$2+^N6':%XS= E]Y(M*T(U[KIWN3LJ(SE\A.K>9>X@XJ!R=X.[_;L:W=S^ M7?AZKAR$-=@7R2O=KN4,+_N*IA&JCQ_B?SDWC ;^N'_.7VO9GI&76OA]'8BG M3-DV2 =:=^733F3$SO[+$P1&1@(>&+)%\90]DTV16O"FO:7@(1,8,J^J\%?X MQ39E7L7?P8$-M$14#X*N&9635[)*51Q10B!!JB?/'5X'$63Y.4_ANQ>AO2[S M..2BZ@=9UGD;!FQ1?^$G>7T[>:#?T[NWPN+?)#-O9M*6(\Q<,W0-6IAA_>@2 M$H_,$2M2E\ HL7!MD];F<[H9TYUZ1G&:,;7][4<:Z.QIZN+? M=U13IYJ";.)^>SLL# - #;TQ'/>\_V5 MP&.P8Q+7]IP2)F!5UN3CZ=>;@]RQ ]< 5%B#PBB5S"*XSMAV3$\^(,G^8D$F M%\>T;QU*L;%XZ33>2W01UA!@%H**>!-'4K,GW#&&7WN-8'\LBSJ.)F8R[[F,J8&_( JZ2S'C7D*=6 .0(0$^ &S]0M"-V.Z>DI.PS2 MP#V))8"U9ZOP@0O[S\4D( Y+AHYC?)X2A+40D [O=_^\WO5AVJ#^PE17%AR5 M-V%@X&4J!9,>8"CF.)@0[S$=?I*!P&(>3"8##1!=<$D2?K8>G$%<5H.)&? R M>.[:<%01D^E#@ 'OQP(,P#A^M#LKX1)ZFYXU?2=,13Q'/-4=)5N60QR3\!_'11+=XPFR_9UP M(9]K>$H[YU!>&F!OK]@H)B19Y&D/,,QW-YZ: #>B?-:C8;7CS^L/C?]])4>' MIN-&5"@VUOK6H36;:R9Z5@,9W;,4/3EF4VZ9QC4H.E,<\@TA;^KT-C$NM]G" MDN70[UT>E 6YM PLQJ>+?X0[=\JY\DS2FM5^=>D\=L3Z>A'7UKB0(4'3$6 & M)_R9^JNI0P MJRH6YCVX/U4"/H'CM-[,<"S,7TER#VRX!19@_1W@M(0K$+4# M1AF 82\9 .&4: ,^:>,($T.6"V8SGA!IB$RHB6,!$[< B8"7>.Y.T@D$D9Y8 M"?X5VTF$(O&D"X>DT?UW"]Z40I)3R?_L2A% M-]8 AD"M<=]GT"L,8PNBC7UG[D@F!MNZ;JO;"($GO^D$(1QU:QHA[SA2.(;Z M ^D/X0E>G+'V@N87,+D2B9Z3.0"]C5'EC+8Q.+U@D\3T]JI!.CBA@(V36+<> MF$%@0N%MFQ=F9";%72+?,)$$)('X@#_]XK<%)G]OPOG'=QIX[HE)$-=786Q! MVX"@SPJ&@2 -\D!LW6@E@VOZY@7M')U?@X#<*7Y[9%0^O=CS!.@S;XKNM A? MU4CN[-8M+EPZN/[2P>2FE@ZP9?, P*9!J?S:@AGWYI<)@$]E' G^0C&5A)"(#8,Y"YIWH&09.SL/MN:!+(@DRG-[0LZT:\ M,L0? 1-PC0/XGQ$@QUB8/]!+).7@DOX MTR,TUV3;E\F^P2%L_@ )R+?I&9882&O/.@^ U]$NA4(S(,().NV:8B.0-;M MH#.'L)K'MB&Y-@&T2X)ODC62__( (/!K*.XR0JZ8+F'15J%><'7X4$1T22D"2L-<(C"3Z3#)+\ M!'?@.[)]_JLB C8(VL>TV/1S9++N1J?$D'0RDXD0(D*^XSAC@([&01G79H2XF&)@MXZ>3Y M+H5FY9F5N_ADN6=I6X:&CN2, PG9BT8MTL1=VX?9!)'TX&OGA3L_/%GS,H%Z M!R]NX62FBT6!=_J*A<]E,+OI%'1)^(_;T6/+E*?N@C%^-$^M9&*[O I_UDGR MFS I5^OXK6 *H>K]>0)$2\)5?T408;'CS,UIPELT! 6Y:6,7//"T0NF.B]7Q M_[@KK=Z"(6_Y!G,PD-X:J=/]JN0+9H)M,N.^H\:O?6.PO-PW<6Z!3$V8K^Q[ M[ _%>QM)O\.7+%S&0#+D;N82%[5 Q$:>(P#G(*_SJPVP2([)EYA F\3J9Z"R_>L>Z M>Z9RX0/7/1]5>I">[JLJP\2@2S*P /=V ML,/&L!Z\**O"//;-7_U.]PKZMHY6K?[P<1;-MG.;^Z36=M>$R*ZKC/U".[)* MSGRCD"7P"UQ1;3KH8FOF)V?,/"WK9O?E!VF\\.H/VEO:?-L2\T-? BZS7RI9 M.*8 A/Y)O2!&[0S@^H8@;*O0 7(HXF*FJ1Q@)/+3@;F(!H (?W5K_IXT\$L( M99,01B00$NA8:.K@FV-6'J?%RT@D3V%]Q_T"MHG-R*+^.C+ZJ(6$J+R)N@;] MO43^&4OF\@)Q28 >G9?[K?-SPR1%C$<[2'-@B!"I MF!WD%B+@RD)_YVB>TQL*HU9V]):O[_*SS)JFF?;1FBI6ZW?1,?$1F0#G)]<* M>I6)+_1L2!0! $4!^3:)^95DZ&0J-0ZVP, M)UU=8QSZYKYMWW(X2\YV\5K&IHL%H;R=E%O5A;4>LZG& MX@5F,U=+^)DG_S*[=%W+L0[XZEDL#V_'V=Q^W; CZ4IJ6*]6"5D%K MM1LM;0=3:9PX[6>\IY7M;%:R:':72JM5FZLO1^LQ=]JR7=E&K4)KY"C=^XXJ MC:K34ES%+4_>OIXZL8K,;_E^EQ\FTM7";%J:M6,X?RM'F)#N[Y]MX?CH5?6%3HE.BO:2[BBRB\E";Q6$N(0O-SEY:KT[*\UKBG)/\_FI M/I1VXV'.D#!?/6DZFZ]78)OC!MUMJ*TBHU0-$T8'34\Z4+\?.HW^J@8&HM+V M/)KN#Y@B-#UC>Q);[K>47;136%82T5RTYQ2--@SKC%('&20ZNVY4HZ&+G+F8 M64VST<9-3ZR/YU?&PWB72M+\(%\>S%=K)IM:XZ;'YC<6^71RPB7Y<4Q(,.-X M0@1!LRDP(#HQX2=QE!*9Y-.';VJM^]TBE8SW^44]%09=/>\S<2]9$ MUMFXHG7+M62W$35B2^D< '"-O%[:+EE3<3;R-+:L)[@2FQF?48-9+\;H4FM9 M5[;C0=U(EW)U"0SVC&C5M*INENLYIPS9]:B8RPWT>$TZY]::G>W:9M2L%H;- M1B(3DVO]YNBL8RWX59\957JU IH\CLI:=-@W1NUSCC7HR/'N>%!8TUIG'4V- M*Z5MM2'ALC2OY3.UO"]&*>\2#12F4X]_^WLR#I6%?F#M1P>XJA#/#.>VZ4 @ MT"GD7.I_+IIX5>1 I$F=X!_;@OZ M2C8-G:0V52P>5<9GG91UXP:O MU8@I=9!@2#HH6RQ[$N7WE-=GQ1E=#%PG!7\#IGK"CYLX)]^;\7K1,,2UK*IG M*Q3I=KK^$-6Z"ETT8I5')6O:L?L,KE!DZ%0DECY3H8B#FN-@+A#(Z60?L[9 M-OJEV,9+-5Q':7\2YS0,W1O/?K.6'^:LE%YT.IW>C_O#];V#UCFU.]QEWB', M2<50O, QS3(M+U N9JM\8F"MO_U(/!/F1 +Q]NUIJ:Q[!0N_J*D>'A.N^_7U MHS;+J48\7T@74'NMM85'LU)2I7?0CSB..W*]E$X6BFM-[L[5[D.N(N'!$V909#[-O3UZ6S!T[Y?F0\K![K_9S$%G:-?GI>HM?OH+95=)"0"OW$ MK(",G= NMBK#+)]Y06UOF<'OD9H;R\NV\8+@D"TA>!+7#-.6=X5#5WMEN/*^DHYWW?)QU_J M(D.O!R1UPCNVX7_@YDW()]>_ZY!4N;JYH=A=XCTO.CR]3<>O'/X$M^K\P>E* MZ? 6JIO4"Q/>0G6+>J'OF/"ZUEM4S%TZ&>KE%O42 ME-ZB4$LINZY_!G[/A= MKR0[J7UYHY,_7^:F'_*6MM^_YC!^E_A,%W1=Y6K#T(O>WHMNYP8[]E-= WK! M6PQ_1HY#&[A=&_CE6PQ/4FXW=G;VBP/.&99].:._O8/#+W@I'/,^IX??V.GP M;AAS8Z>HOXA_%\/S&U-^:-JA:?_)-/6>VFT$ZE3V9R)?XE+$&XMAWRCB>#GE M]S&NY_AI@NP3W"/FU<:=7H-XX=*H>G8GL_?)2;+/"GK?C)?RBL*N?[=,[H7. M%4W#LLYR(K)NI)FFT7QZG4S)9:E;5[C2#+I2*),Y5M'R'N"KW_*WG_ M;UQ$?.O!8.^PT^^SAGSOY8(W)H;+A0KI8FW5I-*VPE9\A5 M:\)]A6T#;I!K=9//G*W]89,5N;,[ <)DQ0<-5]XML_B58._/4ALO[4]1AR(G MY*,9CG:TX;*B90==;NWM)*M):7^-2JWIARRE&21ISF#7%X^QU.=,7 M"G5^>VC GZ#)]0+A4PK'N]5Z.A#-5U:\DDQW<6G M6. UD C[TR@IS*Z$R!,BSUME9RZ(//5,3:>K42:M\+E*>M7GF&ZE]9;(4QKF M'\9*0>/HZ% RY]ELM+?(9P!YN-;8F<(E &*5IMV MYO6'_'JC<,79FALL&NET+_.&J$9GVEJVV)(ZRI9)I!.5CA1]-#+C%.93'"#: M^?.2PLQ+Z.VAM_\R+>J4[:JMJ09.M M5@S[^6XH1#R4P'?;2W0GXR7 M>A=^'V900O._"?,/]WN$D?BMK8I>V@=ORN'V1WS>U&K'+>WZ")#/3(![GF'Q M\7:]64E&^0Z]+&W&PV27;D]S:W(DZK'A2]1 Q'N M!@E9\^=DS6\WB7^\[2"OG[Z5MK+KU/AXNE"=+GKVM-;3ZV(;WP83<^\HX"(< MD[CB#'YC7A2"20@FX1Z1WP232CE:?.#,;;O?G4[9O&[.4ZT^N5J*^_8CS9Y/ MZ/_]85,>X:Z13Q7;?,E"\ ^6&[F);2.O!T1^EJU5'\QT3>F6=>Z M\?8A7EFLU(H2+:;+EO@0,SK.>LRX1YM&N$0BPM+77!(+(2"$@"\# 6^X$>7U M$-"WQWU.F(SHOE9)Q)8/S;XA=3(8 LC^6CIU#;9S8P'707K>S=812D=VF.UZ MX_ R!O @&@Y6PRU@X05/@K[%H=_2%KU+DZ.G<-A =F$CJ Z68M$PQ+6LJF>P MT)@WBS%E(:&^PU37#2-5+3=VTICQSI"-)6(1)G5*A\(\5 @4(5"\"5!Y#?,X(30*?T."B(<;M=0$64LIV9$D\]2$_UU15F2'149$Q?(+_WCNV8 M*,A["YL%TBW4P_+N08^RJB$HGC8G8Z0_SD=:OE94EH/%O);09[V9#7:(0.\+ M>+EM.N@:WG16+<%N4\:4DI]R4VS<%.*%&?ZK/4- 53:^\!&1]S(?Z@'E_!LE5]8 MZ+O_0["G'#S;NY9:XS=18J:ZCVM1%4WM[[QC&_X'!/7<3SR ==L$$-=K@S\Y MOG[:-OV.!>[!_O:J6"D5?]];Z4]OUH:^G1GBA[QA^[7IA0 M+[>I%_J.>[%:+53,'RGF5[)OWHQR8V$FT+_X!2(H%YAO;&RONKKZ3P#OQL9[ MH5"8>Y]M0K<4Z;[E>N%II-2 7O762%VA.G1Q=NY,JUDR6;$$Y3Y*:Z.Y/8P. MN_T2W@%#3K!+<)%8DKG0B58_)<)O@E&)BV'45\OIO?>8+[FH^3*7"6'HLC#T MB'BSMS;.U8S:.0Y5](U-(V>D\XF4HJ63F3'9;9)()R(L=ZGS]&Z6-'&?E32] M%T;=F!@N#5LAH7IO))N9")T["[@S,1:T4TKUMQDI+S4J.3E!9\:D_)U-I2/) M,R58'YE))4,F%3*ID$F].?[<&XYY!GZ806[7G*W4)8U:R59L.]QQC8'D76]_ M#?BYL7D6=),*J51(I4(J]8&@#-J>@3*QTM\U,GWIH9^;2]WRCA6W/4ER[P!G MDUR$37XB)M7;+^^'?.I/H.J+E.-S-[#U( 0Q'\0RV&]?0#*:0_3$>.CK2G/4 M:XTJ.=/D,FWW7EXFPL83D127_M2T[.WQ(&1P+S.X=Z]$?;^5QWSM7L9Z6O*](^J;S]PX>/[% X?5:@B=SJC MUKQ%_>^%S>YW2X9_SPJ#PVI.GQKB4RML\*8YMD<0822BM%[@U'(AF/T.G8B062JMQK2XD]DA([+@B]"EW+J"K-=;5(1N3'K-"0EV#E%+LV7-=2($S+FQV*YF1+B*1RB.!'!CA,N(8 M$W%_P'9 I(J'&J%,9.$B9T 2=7NW=Q$L+5EW>!<%+CT5O>S37X(5B3V@"1E1O8H0)GG)'^%8U[T][ M $$[E3,T4/R6G!Z7_,>B5-(C+$I+MFQJ88+CF= 57.#O_0V[A#&=R@(BUK[F M330S',!=PF+NJ'OXN]=T+=LS"H(+S:(D$_&X^M^>@7G:I)R'TD@]3X0X&"F9 MQ'>N8>$5T$# Q =:V.0+"W P?"++"+\:%G?[Y$XTXOU#,$0%@O3 ''"(.^H(?EDQ^'A#GE_D4FZ3C)\X !H/.OD'7!)$?K@""!IIK&&O?: M[3&@)QBDQGO;/ORQG1O[!'X#_>OP/',#6Z'Y0"T/'LHAXUA>0-C4#?H/4_08:&WL6 MWD/#4]A(U(!DW(<0M>V_[7\3*Q^^C=U*TF'8?N? 06UXQ0KWB3* X(,EJ-XC ML6%$L);=76G89"P#&\J6$B"\\=P(K>$+ (+QQ1F^&L'3X;Q8!\)NC]%X,+" MQD/)M@L].!%$#&4"O@C*I:P9\K<;\:J*/=/"?85G@9B1J6YQ;]P]21ZJPG,L M[QN6 P*T9D 6HG@ _D"QAWF4D1@;B,\V>0S=4576$;9".0 A!PGR"H6(?AK=YH"!LB30T^(IC'J$-VH *=0\?/.F#Y[WO>3"C\V=U+L8E;LAXHS!>@RR8.R6=/ M(J 8EO@U*O,#"A= BLCT]; M@24I 0E%W4T+)&'_G5?7_-;R#\5(W^V/2OF^3R7$B 72=['$OZG SU@<)[+$ MN]@"$CO:I>9][7BCFO_A3S9/>(K!^[Y8Y@YOFP.+BGH#BS-WR<255/7$$6,' MQ0!5GIF8_OZKU\R=W5&!?P;3@SE,/>*&WDB/B=!C\W'!7X:H^/I\7222HSC !/C"3V-C9G4%"A^:H(2S,1C^;R?VNCP MW6&YD4N,Z>6DD1P6ZSMZO&YC@O^T978XOZ\L&[M>02[42[M6,Q]MZ!EHF7C: MTTRH;NV0C9F@M:1P;TT];E@?&M-?K]PV:F_ /VK91EZ/Y]3A^ MVG+9M*O):+]G];6:LVCK6JF=+6;&B=.6L55>JO3S-:' /F323#TWKS;*N.7) MB)BBG1E;F0RG%--9;6S'-+H4QRU/1F1-'FKIQ)R9*=%[+9]NUNN%RDP:G+!P5U>Y6FF.>WNWI[G#Q] M9CJ=+B3C8N^AWZTJ^C"JE,0DBV^(/FE9+(KQ5%O<#>CJO;)-)MOB8Z:1&:=/ M6Z:BY/7]QNIT38K+6.%X4!)=J=\HS23UCA" M/;61V7ID<\W"DMX:$$'.A4JG<2_A(Q=/FZZ;Z\UV1V\5Q+37#86;3:>+#&YZ M,JIM>91*9PJ;5-\I1U/F_2K3CQOD(,>3837'JC478WJ&UOC[P6I@MF=B7,*G M()UT0*@EMZ/<3#&59JU6C;:D_GR8RWAGICUQT>CB<3V.SEC%F:X' MR7DB)T_M5.J&E)Q7IW1UMS7F YZK;=+PU#/F)]&#QW2G:FE*E][U],H <& ' MEQQCQ TS,FB/3:QLH:K;@B#_JRH,6[X@Y$PM*G M3=?5W7 ^672FM!Q-#4UM-..4KH2;GLBUS\9;]>:V(=-;1W' JUM#OD&>RCUM M.M^,9S6^R+3[U6RBC!"79ZL"-#UCKQF]1VM)KE)3JI5*U^3T?"^7RN"F)QTH MT)4X5T/*O<**G?N*DF5[6I8\]:0#]5AQ,#022*6WJKU8Y:UMIPPJ8,^8=KU4 M59G$IBSVY3IZ3"FY3,_&$CACA)5.''?']CDQ:[03J?1C MDFF/S\AAD>LI(RWGE/K1^4.DF=H)FK?%UBID\@N^8'*9#/G9I:1QA3&G?5@U%\^%AZ15EU7F:E7 M-WOGJU.WIXOS)([H;JR^O+#<%1NS?OL:')V MMFKEQ7FJSM;5/MK$-(Y1-M&'T=G9JJ+F[WD5U62ZF4[/ZXL*G97L]KF9)?,X M$5O)BC+M+^-JAE;*8K0XE,[-+.*#HK6Z97Y&<[E)+I,OY9/1;@9:'H\("$<: MH0F7'L>9Q 0X2%(8\RD.IC^:BS&QE#!-,R?ZW]8,8Q-M,0\*-TX6MXU%O%%$ MF;,]),NYQ^- MXA9-:2ZES[J/H^%]C [J_TGF^>5,JI\A_85\*OLV9Y*<1,+R&;HMV_!U ?Y: M"T; .,$2"$DA)OQQU5-B\%G39Q/:'3?1Z55CZ&+MT*EGSH3I9-=\@8X9H[[6 MJ7;KY5JKR"6E=SH3!J>2W,-:2(1.PA,E4_2>!?GA:C']:S/6/@O'+%=PD 7N78L)S%,X8QOL?"),(]7)[>F'N MXB^>,1_JY7WTDO[)V?^A7L(#E$*]A#AVZWH!'(N'>KF:7GY>P/YK]/C=A)#Z M!2%=[OQ MA67S3+GCB6@^ZD;R%WSE1!J_Z#R7L99/9RPAGMX9]-QE>V+%P MROD30Z[_EAP,86+*\-02KA'$P\)OX'4K>E;"[P3(G\JNV$N@\ZUM57QIS)EN MM]#K7LB;7&B^L>&?V:Q].4R]K0,G7@:7KWO.R'N((1[>,.8G8V[=2\Z? /T! MF?E+0)]SM[Q<%.EO#-:OD\C]I'[Y!F.^@!-^%F+_AI/.UQKSS]+]-V/)GR*4 M:)EHP4-LY^T5>6Y4Z! M$UHCQIFGG>[#+Y\M0H+EB:U6TX]E.M-IV M#_IC&#J2B+]T^408=(90\7'"R+>_8_4:4%'=S1?=';I?%;8]M2\5QUR_.'\+ MJ!AJ\6I*,H1F?[F-:Y(WJ$=[F2 M4Q^\7064X3\$S:,X$,K_C@1_$>]+9W,NGG9 M6A@6KQ:!&2W*_G$T^<#DTO3G%C(O/S\CK]HU5"ZL6NV^HV[16!_=UU!Z[>Y= M3$;2R3\[U_8#9#=>S)\W#%VX0@K]UD00!BT775RXR23'36@]C-B_@O'?7MA^ M.:U_O"!T'Z%[YY(1X42-:=39;PX/P\\_<>2O<&>%-Z6%5U9<[>#U)X7T7:3&R7Z"LO.!]RL:I;OA?8X1:[7B3"Q1"0>YZZ7=P\]_?-Z M^OO6]]ZPI].)5"26NGS> M_,;X:<^P]Z?P7I/!W-BP;R@Z>?=K5]ZM-N'=1WY+:'@IWG-F]? )%)Z_;X;K MMT8MKBQR_6A9C<5&9:>X4O%!FH3WX,NXTJED6&\0XL/;%22\^\AO"1\NNL[Q M&_C0E$N[7&:W*4JXH66)6R.S+RW%U\J9;+E6[I4+'W[C\J_M M7G_^:)Z/NQ+Y^Q+X),OSOWJ\R.=>G_\="GVXA3MDJ+<4 M?85;N,-8ZW/$6N$6;O<5_D8DC;<=T[V!PICZ^X_\RK!P$?5SEWB&^[=O; GT M?$&(?Q_.]H5-&Y)ZG]A-ZT*A6RE:E1@JQM7,&E^F%_OV(Y[@(BDN$2Z!AM[] M$4/#=_?NZY9[O<*[6Q.![FXRF6H_5T2-:G[S.+6KY%9-[MN/1!R\._'2@0H? M+_[UV4GP@JQPKW089'R"<#G<*QU:\<Z4#UU*>F:/;Q?IRR^43 M4K_8C8I"3U67V0*Y>)KLFXYQEY^A;XQOAONFP\CCPAG]FTPNW(36P[#[*QC_ M[<7>E]/ZQXM*#W/8]1+E7]*!;W@7Y7N%J.\MDULB_V^473^X]QEZOT[G)_4X M5UTI4:PJO1XS'#G3-))B@>+3;+B[.L2%*U^B$>+"6^?E7\2%!&\] MEGN3JD6S*76^%NQI>[B0,"YP&!<2:7S:\4NX\"E"_^!>[$#./@SSPSV6X1[L MCT21SNRQW./@RYG2C@\IN*+0*W'U5PK#A[MB.QR/)Q&7.M_DH M.[8#WV,6G^J&Y9L6P8TM+K^'"&YL>_?[6,%-96!"1W@O1[BEO>!_(()/D7(X M$@;A5,!)#)=41 5#-(2EC0"+% M@XQX"5$FTGA9/YR>:R-3^W[I6?>6A1TN[7Z1NH:K;.2[,96&EOT5BQ8^RU7? MS; ,X7.PVPO/+#>5P_)26 U'@V<)OY?%#F2@HA82OHN.N46\^?(*GD_=,BYS MZ_C$C?RQ![2-<5-.#=XTQZC1*TME+98L1'N[ZK1W+]SU1O"# MPJ^^A*_=6& 9^MHM1H17\K7G4[_7][6,QAM6?VM-^FRIW+92=4-G'B3L:]S/ M?.UBJ=T;(V!/9W(J>O7=;C1AG0[ M>&%R1A1 M%@+-[>8&_HA"W3#0:/(C4^Y/9@E%3F@H/MWTA'1B_19 D[\?3CM#YUY1NHWL MNJ[4TIG:(H.!)G4Y=G8^/C8-GQK1_5]\7/2WVLQ MG.0H'-VFH#D*5\&_1.#PQ5;!P]W]H?%_V87R+[2[/UQ+#VGNK85JSR6G?K8= M9.&8:#P= 46[+\;H?K17&U:<41,)HO3'V\BXW]Y1^R2+E/>X8P>H8PN90G"# M;93=[P89"CU)YJ.Q2:':C2T78U8M;8O2F(WC362)NS/[Q_[]*2)4*O3=#QVB MOK7OOF8OUUO[;IRC-[MT?3Y5>'NELM''UF"Y:V/?Q0?7WC&G9^+]^Y-%YN&Z M_KMOW+C)..+=I7*3P??;\YT;7L%[KE3@_>#\7G[D)R.UO%/X58=FV_=*K\&M MQVP"4S'0&WU%*A;Z;XAJ'S2K\O9,\(91[;FZA/=#M;H-6O,3I]LO]DSHA'^6 MQ?ZT,/;U;OA\$4S><14Z9L;>'-HS@C-JI_0X*(AQNUU 192RG9D23SU(3Q7G M'JQM6'8/BZX'#\^JAJ!X2IF,)7M;1Y*QT/K#K*$HMAUU8EV8_!#H;X$7N4P' M7<-YSTJX-T,@ FUAZ&!"Y"8*=^NG /VWJ#4R$<5;8+2J:JRM[T1^'UCUQ)C] MAWK'I<"S57YAH>_^#\&>G7F\ 8^<@F9] MH?F_1_&\\WUB(EZ)KD%,_P!J$CS];B(57&2%GCS3TP5YL=^4GUB&ZMCHR3C? M;ZK^A9D:AK;_[Y_&K2\F_T.]O(]>F+MD*M3++>HE_F)R,]3+^^@E?9=,AGJY M/;TP=XD7UV%#O80X%NHEQ+$WTLNO+FS])&IY-QFDWBJK][/XX(\ED#J.M7&F M")DOB^2ERZZ"QXL<'S4RN4SJ]V5:_F'%(1@J-IG_?DM\^UU+B=VET^]Z2OZ% M9?>(>),JZ"(2J3P22 K5%5Z,B9R38H@MMX8M3Q-YK[&(YV5R8B)OM-AT9<2Y M+2'M<8C]71QBF#N6^4PXA%/[%YN^7H[&;LR80MNY@.VP%YBE;FRM^TEEE[L8 M=+$)Z<8&^QZUJ'C*"<5 4B0W)H;+7-" 3[7#DI9A)+&C4E(U[:/ A2O#V.C>/??B033(1]\>;J/V0!-V;8IS3 ?TL. M1C4Q97AJ":DKA$>*W\#K5M1[30@'(1S\*1RP1W# C@M"KT+7,JI*A<3<#9I\H37!K8WYY#>M#[9EZ>=GG$P+N=?D7 1=\/-9+@-OA M'ME!I9L;*9SN9%+;=FLX26?&<*G9?4?)@OS"A*]5R+9_(M"3 2!=#TY%T,G'=Z^YN,<%6"]18 M7WG79)AP"Q-N/XNPW_OF]=L2T[/Q^GN+Z::FENO0RS.WK>)YQ7KU!:N#?#.G M9/\_>V_6G+BRK W?GU]!]'E/?'M'@(_F8:U]5H008IX$B.E&(9 00A-H0,"O M_ZH$=ML6;?< 1L:Z6+UL7$BJRLQ'F5E93SIEW+2K@P&[E>41M1!E$KJ M-FR6\4N7$YI"0\OPZ//AT759^!A JXSW6 M*N[)%;(OX@=JM>$LW^4 ( !_C<'Q/'&&"2BCS/A3RHS^?*FIH:5U%KSB+\N6 M&_7#]=J*F5U>4+C\@%*CW%R/M&V1EI *5P@Z9K<7M*!^W(12X_FCY^9@/CEX M5"QG.$<%A>82GP[3U%S@/G+G&7[&LY'DV?AH$@W\ MB?(>[*QRYZV3],N::8Z MJ3]L?P3@M-5IO35GF _/K14@KX7KY10;DG[[.2-F+@>O**W;Z-XF9*; MM].*=UA1\Y%L+%UE#[W1<^70 T-T[)Y8K9K81)G-6Z$Y:Q7@B6#\VS\TA>09 M(MGS]$XCQ52^PS/+_G26_9'$*F]8ME/G6#'<H26C8%+)O M\M299E-W%LC_BO]QY6._*0S8_P0!G]TFZT+XF18QE4F$.W&^SIQ-.W\L[0W4 MIHFH9_2J*T4JM/>%-A4B+8G2Y;CK*8KF?W3NV0?\<=ORKZ?]2;@,.11YP,G_R3W[ M&2Y'8BWA$8)G*_;B%,'I:R\/$CQ^^$X]V$DP@;O^"T,?X)D%&_QZFAB!/M#D ME43U"H'Q[X+YCY);>A @_GO0X<]N2,.?@1T!R[=>;$J?/OKV3WRF!FX=\L=3 M%_Z3YBK/Z\9^I*LOE_K<"BJ/T% /N@I%+5LSI!&&5@O95J=1AP. AGP[WNUI MI,H.4*6PV70DWI58N< N&LY(A]#W>F21Z*D-L6@7A;U_\.8'O::O"%'&DM<, MQNV5(BSV7423QN.Z7BG/FE4.C$Q<<+@J)6A*"ZMV2&C$#4FQA)S]D9-2HS*&+;2&W0F';%DA4!6$R,G)W@TV\$QJ8B2#LY-JT*^IPIX;3A!R$E6-'B?3R9%=;M^4 M>LY(0PIE?U<F MC4M\?SIK-Q>Z#(=B'W9,K!P&H:>=R!+6I_?I\6083!,$;BY8:L F M;6"+^__/?YU!>+[1GUMXKIT[S12.^)Y-@*?*@&D_EK/E<#2?@S%(3CG3V?GZ MG;%]7]->^A?-TS3V+06L!_C_#X[XJ>ATT6DA>%NR]]1X2Z%C&:M'-SKBE^I# MJ*R^/H5R03.YI%,NR .5'41-S8&4TWOEUCQH M?W3>P,]I#GRDGSMQ<#6D3UNM[Z\?8_G].NG3=EEZV/3^=/%B&K8_JI1^M*QT M)9M!J$%DM_M2T"SI<[B^=!>7/16[7&I6AG4I5E M1 W7;98=_ %KTAO!^^-^0"G4VN!Y!A'<*&N!AUN>VR(H;UQ+;/'D"-$*\H)J MN'IU0.HR!G<=20;)TV]RKOT>E-T8M\C/\ Y/+4C=QT&3]X*'#(,NA4'0L1Y$ M[AGH$=9\A M*UY4:FB,7NWNQ7FM',@ZAAZ"P//O^_N0=>%%4YD7=M1=U:N5,\!ZSED15V9X[Z]J!-CMHS.12/5:,X3N5)]JVRT7MQ MHIC,B;IK)^H&RY!Y6[<&/&-[SMFJMEG830VR@D/ (] \ MQ5P>\&ZI^H.EYFEQ:6;FY;[_MV*%J<:[V,G/G[MJ=RW)B=X%QY[83 M9=Y1++/J2[;>[QDM0NQA(2QN!["&Y6G@GR'(!=OLI< _@XOU5\ZPUV$0D\ ! MV-?\(//5,E_MT_MJBM#")Y&%79S,)2+*1W/H!H7H7[7GC>+ M)C_OTK92KY'5BBZS\4XE2>49G$A@VK_OTEL[NFGN##SU!2DR4NBB9)Y:YJFE M%^#.' YO?C^#QC^=/GNS'[*+ Z?%9\:8M*&'%(<5:&VTY>"AP=A9PQ@BCU+W ME4P[.FOST/-BBMXKP-B7Q*S,7\O\M4OX:S_PU/BCO9Z!L%K?H(UJ$42<=K#! M^ XZB*(U!P\S/WIF%'GWGEG;=1X1+7///MX]NWF[X-O5\-]\ZO?HV[T#AM^M M_0P>AB'?[ 5&@T4ZTTJKOEN@[,:(:1@@B5B>P>@\CF _R_IS\P/\+T\R_AGG MSW/ZHB0'T-U,-9M(-I%L(ME$/M=$CCQ",HYHFC8C67FN49I,D'-5GFD(+>/$ M@J 5BD'G./Z:>:B\.GFJY6,C<<*=QID8.]I;= MP:H:=Y9TJJYBS;Z]M@1$6Z@[95^:2%HC B/)!.U3MUNU)%LDI<9:[1BL2-GA M0#Q'3^4.^J-JQ>F:@M*9U;JV&2J52 X:&2MNKQTG"D&R5%/$=YI7<+G?E.6UA(0^J.D XA3OIU\1SE M%:=(A>W.-.MF(P)3'AR:-=P5?SDA&297$5 65$069R\0<7<@SE9S)%(6J&(HL M$&S&OK[V;&POU'&UQPA\T C%X;2ZHZ;B.?GWN?VDM&%=5N@LA K-%(S1VA// MR7]I$YW:?FC5$ .7Z&EIR32H6%,2$G!42I\5$4(SL=KHT-0/PG"VU,_)7V:7 M"\*29U736&VMIE,.=@V!.R"G6W@)OD3K(Y$7$(L+B+O7Y._CH]6DY:X:"!--:= M8(AN?+5$1.TK>]LZ,ML) 6+WIZ0P=>A& M?\J=HU%K4MKHL#!$3MA8G4&ST&UOBLOH'(U:4[#10!\M*:GC.':[JJQH?,J= MI5$+6_P>[-&D<)DFQ\.I6H$\;FARI:Q].>J:740U]R,N;-2-J=X5SI.S#;1& M?[CIUE8FAA%A5%K[>JL,3.2,ENHB-R%JZAX7&I5:8/M5C#.F\="D.3%M8ZEH MT[W$1XS8+O-5M*?I<.BC]EV;PZSFS%U;&R@[2(QJN;#U6I*LK#+U1[VH1Q " M50FV8TJ6MY&B?\L],:ERP1OC8B(Z]!;49G$L#]^A/\,R@:(/N>-JY )E!UOJ MG @GKBV"_GRIJ:&E=1;'VQP>?XM7.NXH -D! M]X\$,L\ZUCZC^'-4^ -VENOO!FY<1HT7+U3@/B:Y:.R!)&]()Y7DD(+4MLDI M?DHNJ3_(/6-HQO&5/KF@#_B;39PRN=R,%(_(Y)(^N60XEDZY9#B63KFP#TR& M8ZGA]GS7-[[9(C"_L A7!?#/M )/-)WD[])T8N0#AM^T%NK"%*?PH%Y.>!&[ MO\G]FAE0Z@R(>6UD&6_2!9N[)-&#ZZF+$QU]&!^X+'F'F\EV53UN)C5=WR][KGWN;,NK32?-/]EVVPWZ1\,>N,_^>J9NTI)MO;YRF9V MK=>>3)29.1YP1RI2%,DC");'+AO>#AF,KXZ/%RQ1>I'P$-KT>U+ M6[&A2,J,0REONZY:%JSRHK[]0^59DLF3S%OH\!O>TBWUOJ7MC+G[&1S^U"+9 MO1QY>S,+>P\GVC[&D7E9L?0[8 50"?S[?]\*9^!IC99*HV:/0I *KE?$Z8BR ME.J)?Y@FL#Q^YA3OY4*;S+P_J7F_M\ERC^9]'4?DNN8=$>UH=6!6O%?.N.:]E0-%+VFYH#P ^TR)UJSF.NMF.O69]P_ MT+E)X>Q3%;BESAUZK"@^QSW7-2RYXC0W0J5 U$KSEFQMMOJ1"AVC\Q3!YG'\ MK98R&:!D@'*%3,^M9Y\J0$F= _8&H 0U1:&K>ZQJ-A!CPY;GXU$5BP"@4/ P M//4S_>=(^'P\860#YJ1'O]OFAS!]J&8[K 8VMG8AG.4=]>15A$X(_ MM[1@Z8*_;,&0F+[W#-S52YIEMK1#!^&)^7X9%FJ>+>FGS@I4GD78/,I2U_.? M,ASXI#AP^T12YL9<$ >F HMV=JVP(2E-P:7J!Y

+QM#:=QRDRSQ)OP<#G M3SC!\\3NZ7APSGU:]"Q2S"+%+/7TN5VM,S4#SZW]3<+OA9HM@\Y:L$W/=>RP%!QAV"QLE1NO4T4P4:J<;KTV!A" MT(#U4'D:IJK9).M_6CFN?Y^)ZS6K]<=QO?%/Y&B/O&] IL)NK3F^5M0<;6$$ M/^)YFVI6;2U464&AY':O[X3F!#O#QG=^W.W8^/X^LL+!B2O.'@H#I?_V?.7A''Y',"Y^3(7,U6 X8&; MDQ[Z#\^RDGFX>+[AP[^ZBYB+[L@N!Q$M'33!&=M<,DZC\(QM[L>\!+=B:7JS M@U/&.G,KEB:"RN22/KFP#RR6R25]R<,\V5:B'N-,'0WC MC45ORWI;B7)ZK>$H+*"HR1UIP\@\A:)YG+I6[5UFM9G5?@ZKO6[EW*];K6SW MJ)UD3]>(C?2JU2*I"EWUQ 9&X$@>12]X-C-5D?31>8A9P+( (0L0[C] N$\/ M)39@SE&;[OSG$*^H(8WEBEQ-D;"T4/?=*#"K2G3D]4+S%(7G*?):W.P91&00 MD6:(2*S+)V=0_5F,^"%9JMYBQPCG%P^()O!AC0CQG384CYQ=&)M'R3>ID#]; M(N5('IN%9'^":RD^.WXSD/M4)\KCTQC8)8[89U:06<'=6,'G#_4';J!8N?G1 M)7AVG"JG'=V!IP-7%VIFD#G[;SC[M[:&="W3#X.!6R_3U\LG_. ZCEB.V>S M;P^VY9I$!>QL0-3CDCOQ-L(T"F4?0+)&084N&+9\ 6SXD#_'SV$(V!MMB M=[JHFH:^L((BURA8PQ/+$X$@>9:\(,?3K$4R#/3X4R'4Z+#GS_JOW1U8&JFESJW^VLM0[9_]P$Q^:-G>#+B'_O/ M/]S 0\T!L57(:5W NNVI/9*Z2Q$39?;8Q8O*(W2R)C'+_V5@D8'%IPNR_QPL M] ;9[FZ[;=+44'$\&XJ%5FO" ;" ';H8(D]0EVR->NOM_LN6/GXM@[Y]N'(K M$/M:B/4Q[LV+^J3?P*V@W['D^3KJ()A=T:+=DMPN#%U&D=C+(9@\B[T)7)GI M9Z:?Z0.W6NX3I6J8[V4R]=(UC9CZ9^7QE\_EDD?^Q$E(]^2 ?4PKY MM10]*X/^C&70]YI?>-8H!<0:X/\\^-"(N_7^.!>JR'V68?1&]P/T(T(GQ56 M+.8Q[,UMUL^N50_W< GB[P^./*ZR\9T/Q5,??5>=1_1X/)GX)\JSSR=S2% \: MP_+577'XE-=H??)#FG*,>+3E)^VE\-?]3/[K1=N6)^LL/"U@;(+/9G5J%X/% MUJAKA6-7&&4!;OR78D7*WG_TD=D'_#%V^NO)BN$RY%#D 2?_)_?L9[@?]Q7TEWD8+-:V,CT M28^5?YY)_4>Z^G*ISZV@$F.#C*HS0M%P3)Y3,T0FYAHISUB:E:D%PL[F-,92 ML]FWXUV5IT3.9-\OE>H\9?+]36AX),=ME=;#?D#'$F\'HE5::E?-_LXHA'JHDD['EGU M=!F7D=CER+S27_;:-M4T;9;PRTBYQ M;AF.)%^/I&:CH+TKXRNA0/-<$2+S0(.J;!(7.CL"*+R A>,W'WUK#68D(8&IH6U"R:*'%'3K)7*U\0-XO6R.M(?%EN[>;%?E%;0?:R MQ-UQ>E>8S,H!*5 [/&Q8_@I7&4ZFSJP\T;2[]&X_E<)22UPQT]7([D9@9$+N MYA2WS=*@9"*%@U=C2A,9>!$Z&)EXSJWEL&/1)B9F UM,-MZZU-]A<&3B.7DA M:JM,7_4D?L1@XFPH8+M6)-/)YUPVC>66JTW' B8&_$!##TJ]?#IP_7+DPI6* M@M+<\^9H'HIE?4K.!RJ\9N+NJ$"T"OTIPTL-^6!/FI5^1QB*,I.\^Q93BY(2 MV >!(B=")SA$]D@Z-9=_.7*''+H[0D"F0@=55KA6F2];D@Y&)F6T6OKC\E;R MA4*S-V%T;+N-N%-U^LN1),OMNEIYUT&,HG6PM[NU0*Y@:>K+:\H*.D,U%45D MA,55F2 )5&84&OQ*8NR,)!"<1*G7URX26(,[E&A&JM!M5 ^+ZS4+=.H,0DQ6 MQ Z3*]6UU#&0JFR+8V.AZ^<0@G6[O:I/$VU!05W,%NIJER+AR,0:'):[JEW& M>SXRPJ8JQO6:Y4"*SB'$N*NO9@Y:W0I:::9X[1&)C'SQG#5+I1VSI^M-6M)L M#S^L9D.9X<1SEM>>] AM5I;*4J= ^6JI/QBB ;2\Q(SV\VV[T=_;C,F/JP13 MT&?]O736\E93:N1,&E@!L;?UZL;?:M2F&9VS/!&O= .-)72SXD]F=2/D9/S MG=-]M'?HJ4)O"=9SQLST12-@ZL6S>CIK-J1H4ME*R&@DDEC9YJH="VI*8N1A ML_)"EQ% ;%;LRFSPRM]?@G,Y,RZMJS)J+5W[,@< ME16"+L[Y7LOC9!"G)-?5:C5+0[_81ZA29)JEW6Y8 2]([(P(^)G9G_+TWD-" M;%YMK X]V<$X.#0Q+6S7" [*CMM)/*>NAUZKU.HP\=#$M+"NP@M@E('8!=&7 MU' I8@!5L7.FNCQ,+,-:-TU^.6[L9[;=I^M@!ED]-2*H<&LK'X>)C\_G*U!_UHAY!"%0EV(XI6=Y&RF-3^1]^Z\U6],<@ MY_G7_OG/BZCG(IFNEW%I?[[4U-#2.@MAL=#FT.-\"E5[2J#U-'#/.0C7XGO% MGNX /$'1T:W"SP0NT:4=?9 M:)3+>2^>^;&/?=SIW@^4( Q<;Y];',^)Q'4/8"&U7.#&P[3'93A^"C/YX./C M\> ]\-K]G':^V5X.KOKQ-\51X6]8SO!SB@^N85ENY!\)#CYQ2!XG%9XBUF/R M"%S;4M:^]M?C#\^?% 9XI^ .ACGS8WCT^ 1Q-*D :3Q^< PEXT]>1)S/\D^G M,'^Q95]5OO]#E$+8]^W&^*^O:>JONTSB:R25] H%@SW0 M65OP%,H%& R1(5D:!?- 9_W:KR>77V\W_;8C]A7:3;_M\GRF%7AJ2(S_=K]V M_(&D[ZDA\:_V:[\:L'U0R^H_Z3R?0<&5H> B7V5RQ9G[K5X+0Q36,TKFT.D:.UA/@P%L0Q^0*W7MI=/'#/<_5WK5?76S^/7* MVA28Q=0A"D9_TMJ:^[:B+D8E;J ;'# +XHIF<70 TF86?^0/W/+)8WZ=XY&K M?,[1 K@5_.@!'/=Y/T.0]G'_NZMPC.MW^I7V>!DKSS\'2;%2J3/FI.C0- ME.HHWM9SZAM8!0??U@\,<[V7]1V^F;^6HM_^-?PKBE[9(P;-%_"I9!G&0\^\Z7*2%N$9B(W.-\)Z5ZQ)ASKQ:>F/ 58ZT.! /5<6%>6U5-!!Z!!:\6]('%KOAF M^32OD;2'D%T-J(T3=VP/-/LRQ%E9X/@%0.HZ@>,\FKL_A5!/>EN#:ONF![RP MIF)9#XL#H8&VJSQ'^T2]"D^K@Q@12/,Z,)7%B%_)&*[SQKZ&,6A.KQM9WJPN MA9HQ&5!CD7==: P$-(8K=>O[_-%@JG9=^:7BZ%K.<');Q3H=?U;@"5C%F5^N MZ.JN7M=W27.;LG?WKP081Q6N.8^8MD.[]D#,2GS4SZ^VOBK1O#W2=?ZJ;P$2/!H."%8 MV(5TBE'K4F;;B"\C\I#V7+:71HRNX'W/DH_T,E=K2RF_].8/C./ MF[L'/VL>1;P9,.MV,#0;_< ;,ZZV+F$Z, _PYB<>D*M8QZ<(\N^0M_GC",P2 M;BBL-#24^)D-S?\!=]FL;Y57Q'K01["!X'@;5!C6FN*-N,L&RU,CMMB\?%BO M#J-+8P$4_7$/!*RAO?: ,!P])BSCP:^*LX_W:>F__;C.W7(=O1!HGOV]S1N\ MK'5:C3UD)0/7/L]AEGNB+XLT3\L(S%).8/9&!0CZ11EGKD-E\B>O'CH31"H$ M@;S9>S,3Q$<) GU ORA-6=HD\67IKU(GB R;TB&(#)LN*XE?3W._[;=^W*P_ MC.CI/0\QU5-^(GDC?YODC8I%GF).H+_?(0'Z*2JWS!!N;PC,ZQG_%-75DXIC MOZOB*!!FNNG.WE/Q"_*;?3#/52;E7Y(R]KNH]=N9J&L V5N3_+Y/D?N^47$Y MW?Z\K_+KA"Y7[K;X[B(D-.!C5N6]..*++LL'5^!D]I%61;AK^_C%FFWTUA5- M<0SS;*M0B7=0_[K8"_'6D[M< 4ILS+>>S@TX/H_FFJ[#-*\\^_LH$\FT]:MI MZV^\+&XGO^=KOO:T.+\-"]IRN1\2/AS)'G)SQ?/V"]>+%$_U/U'.*!4*_2$^ MY(M)_K]/Z>2=+[W\Y;I+J5^2^_,-,FDX:@$I-"8#8Z]7Z/J">UEVR?ER9_&\ M:JVYZ*U:XU*T,ZG*,J*&ZS;+#E[462(OZRP/FN>JBK]\7=B6*&=[8CW@G]M1 M@@$!^4Z X%9ZD6$$&-)'5JXQUNWQ"CWU%7^B]?C\9RPR>\SL\4?VB,F]6M P M>%_9215E55U9ZHH=2OH;]OAFW?.?&R6W55G':08501OQ2ZS0K_DV"9N34]_^ M(9D\0K%OV.0GC"I_TG=H0W;F8R[6T7.6Z_O7=1=2M2P?B%A?<-YI# 52[Y7\ M&@KRRMH(%*L)S/8%#I[!/P^1>"J4"SLD)#!])!<8OSZ&K$S *4%Q),^B25;, MNXGK,ZO/K/Y^?)]?L/K=;LN1Q+C$"AVT2S+NS-EV*B*P>N#U$ 2>1VCJLFY/ M><;C[W0K#L<7[$ RZBM]6R/$CJXZZ;@=>70:JK^R?@A\?/A-U:E8*%.6('GJ"24LNOZS(=NR\$E4?.,!9G.97, MMK^L;7]$!N9"MKU5F4=_4, M3LWI>NY<\Y^VUD%P5_I>8G8&O *U7NL7RL.NA*%S@:CW&J+LI K"[E2ZZS$-GH&TV;CA2845C4&Z6CKB6RCXMBW=1E%H$^"L7F$ M);*L2F;BF8FGVI?YD75O@B&)%WH35NA'VZI(VBHNC$5HW==R63Y.CQ\EEZ/B MZP^3C7TNT9OO"^4_;MW+Y$K'#4_(D_9&+2GV-'X:AMYHLO(=D_K,ZK!7]^NV MV6@/VQ.3V"L<"C )SR_[R<5\H&\6WM M7+JWB6A]GC[4MTAHV:11W97\X3"*'^O;/V@>Q?$\A6=V=\Z:_ M$RTV&*D[WJ1:/:NCA^.5TQ#A8P'_AJ7H/$$FFZ!_DKS)WZ]HM9[5SEZ.6^M+ M -6G1ITTD@YEL7VF=)^!Z2H%+?N>\MY=#W)4P/YICIK3-J$15R]D\>-&5_Y'#4'2$\W8.?2(RES%C=F+OR]( T5UU4CP[( N'RW MJL<"Y9>_G\&<.1*,A$E5LA";+7 4S[44,8AD-.;39 B8IWKK.%06;V?&>A_& M^C'NP)\9JZ1CM55UUB%-A1N*4K,IM08S#AIK3.: YFGLGM@<7OD,KRD;8GTI MN(M"Z%_'^)^!H'^.!WNHV-M.B:953I_%=2Z5BJFYLQ=6WL)7V< 2D'\@Z8%: M.X@H]R8[>ZA#2Z:@)9,8G:?)MSA8/EL2)CNYD(5;MU^7U,9EMUZ8+"^1ZQXH:XOQ6A]<)FHQ22QY$_I YX3Q.RL/S+S3L-Q=]I MBB;N?>)96/VUYOW)%?UB[[2/G>[LQ34C#;HSX$DM%?RQ9/C0#3&<$ 32IXH MUP$Q]"S;X$YO^?'=$IK?>I9?)W*\]TE^)GV]FUCI!5_)L5;\KUP6$66.XA=S M%+.(*%/T+Z'HGS0B>C[=GVI>Z_I^;JYXWG[A>I'BJ7ZND&MI.V/N9M7 :7<^ M+[@K\67*_W#YM',@EPQ_[?J*50'PM.8MX-09"[!P,?'PSO"?QO4U'?(M/,\G M?$\GM#1[IGFR.UU@4FE>*2"8VM'F-131RL+E* *_'V@ YLH_M]:RZVE@4<]U M>NMYNW7#G)?-3F>_6=1HM8 JG P6 &Y2YAF" /]E)<.9N=^UN6-7,?>9Y)4= M#-F.$(QDL.)A:\T83[RIN7>;0:25PL5:HM223OENV?1;.C1WN*N9QVDFC])O MF?O=A.H_Z0,U(5O=3/$-/Z<:"R !S9EK5W-^4K4H6>!SEX%/:D WS3[6^8[@ M$ R*$ M*3U!PKOMFR:?+!Z[A(06Y)/6%16.[ZP*7*N;,P_(,RN0I*F/-RT D M Y'[]MS^!$0:_=!:*.-#!;';Z)K2['J[%$001"!)7QZE\#S%H!_AJ*71*P-: MXP6%< TTPP^R7-3G"4[O=B,T-8#X^;RJV)C!$T)3/H.$.EED$0W=K .Q53!])Y!"7S!'-%-IY[MX\,!.X/!#Z?5_0."+1[1:&%-]"Z$#+# MU49C1+,NBA $(/5.'J.)//.'Y^'O*V]UOLMPEJW*S@-_;"!ZZX6Y]2'$]#IC M?]98=6"OI\V)1P12/SI4RC)+CN8:B$]CAD3@DE$TDV?/D"1>[GQCACZI,;); MKTN&/I_."_PS]$$.FK"=%+2YH#4C>Y:KO<74+P90B)__Z1U7UP+5Z$?&(O]=.:@!+Y-TG1<@M%3^GY!8:L#/%RCE: MD*R?A]?[?Q_UJGLB/>'"8.EZ8(%?:'4)_!&LP)P'H5/@[4]Z/%"69(2*0@6I M6/I$LHK&'F6CYWI<('_!S_]QL>*33E-'G6Z#/\J%:F KC84DFOMQ5.()4EE' M//?M'^0AZ=3G@ 98<:;34<&Z^X$2:.E?]3Y\3,Y1FRZ8?3WT#%\UX@*3Y#%KB.,BV;#:1C=PP'K M'VK1M]R3R+G@C7$R'(9^RVE .&MPW\ +M8LY50EFBQ^_S%#L(?,_@.^^^,YL#\9M#>C QD!BQ'B<^Y>E 4!9>X\GM?T B/@X4G-4 M_]\Y9:L8%O2'H+*#K]BN3Z\<+#4&J#[D!^/GXT$=@!-]_G!^<$H"<$*X_ M_(H!?H89L>0]@.G#C;[?[S'_#/DPU:FN+!T&%Y MDM%38 !E=0H<$.1_KN+^S\&C:MZC.__VOYP__/>%; M>,*2.(1Y-JOET2:P.)K1M<+,TQ2SH"S C?]2K$C9^X_9//;A*>S[ZRD*PF/C M 6\]\G]RSWZ&RY%82UO9%9ZMV"EX*EC:(OCK]+7'S^+ Y^E#US>@Y/_R- NH MP%:#5W]QW5@P@;O^"T,?8),Z&_QZFA@!8G+R2J)ZA2'X=\'\1\DM/0B]_SWH M\*^<^N-%X,] ]<"[S'H!3J>/OOTSB$T,*#(/D=P)ON].*_\\D_J/=/7E4I]; M0>4Q0M)F89$HK.2"V6]L]J@Z1"BZ+<)7Q;?CW9Y&ZD.'&B]K7E=JC-H]A"GU MI/("Q%+)D;Q]F)?" &^;C;:-">.^WSP,=#"2?#URR.]4KK=O]Y&&WZ\H1;*% MR05=QF7D]3=^P1?VW?"XD)H4+/-KN MY.I$ ME\GD2*578Y6 V=611@L5@UD(D+')R51R9-2I\QP[K$M((13F%%**&$+C9#HY MLE MB1V&!C(*)VUC8"I33P1#OVO)*W?H;9?DY&I\U O]IUYWGK9VO?@P^?'%!U_D ML1,9O^R S>;C8=IBH.VIQ_X?"*5+QT>*WRQ)[WTR M:+C$:%=JF?TYAX\*@M,?@)#V.O[X!^E-G+=[.F5W@"EG*VM?^>OSA^;-! M[^'D.9 M_PRC/OZ L&]M-#SS"IY=W 477 #M?ERRQ]_CLKB_CIY?!!;I78_KZ>_*S'>A M3OT-G:]K><2OW"SD 2&_.UI)SRK^WL^KR#/G^8\W1MXL%+ZR3$[6$=\X(9Y, M+)E8TB86Y('(Y)(^N6#OG 3(Y)+!6":6#,8^1BX_7X7X4G'\PNF^WSNX)M<'Q&_PP__[ M1G[[W7<=^4"R-VWJ^ANK^19;^T13O)S@J)KZ5(UQ7#\,_-OLC4WYKH4?#)?S,=>%<'L%\%T43F[J9G MLY(3;G_?_E]XKOV#LCTE"#QC%@:/>_\\^! *,4Z'C\"_'OCH(=<,U(<7!0&7 M0MV4+=HM*J_3MPH7J;R.8Z@TLC0]G^FEJZU_=]?G]\Z1':LM82E<&5@X_V3@ MWZOPSM1.XT;10%HE:RQ5['VY6:_H4K\)]]'Q;__@2)ZBL3R*)ZOC+O9Z3)FN M9Q:?6?PE+1Y[8?&8+,P'=:3)619"];WE:+3#HK;WVPUY?\OBJUO3:+?V"Q'! M"IA=%*QN:\6+#^*:EP3P=8C&F.L[ M#57@)^4>MZ,+"X& A8!'N@X23:+>):@ZKIX&2*U3DQG\US3XZSH]/V_PYFJF M8ZT).C"U?JT[Y096,#QP,G%BR"!Q[,_8,>XDYW/NL,>QCA6>=EIJ0$Z!YMF& M\ZH$4GM^B.7Y%^\T*OHD;E:Z%NW20/O%X\GK^E( ,-X/*;E'O!BX?&ST<0'R M*1$PI)PG*69,FS(L"$5 M;M?UL*%MLE*K:#.HU*"74XU<&M-%693)4T(*A&8,^FT\IWLPA\-5"YQ/<5V?.Y@8@>SQV)2I!8J-\U6/&(+ M=X26=HPLG46\T^YWOC-/_BC4H&9;V2PR/0ZQ!S6?V*S#55\09?94!DWC;!XA MDRT&LEQ%!@(9"/P\"%PWX_"G(! (:##<=INB8!"..1RT] M1)([29\VX="U0O^ONXLD4NOBW!&4I6H;/$L79"K\R54X2PN<30L\.Z#\$RU3 M[M0+_1POMY0M6N:Z?Z[XO>;,/0UV2E.L9S7R/OP* MTYE9L1?#^7[E274^Q@00X>/H.YCPV:+[IY9OCYUTGC71"1UMIWESPX\/V9S. M/#NPAO@D7E16:?^I*[$^N7^E6%;G" :GUQ4)9:*[,CD^, XUK48:S'3__M'X;*L]?<*DD-BF2PD,'"EW"Q?A86 M#A:NSIW!HFOVQZW2K#,7*^%"A$\/W"N:S6/DA3=/4A9@O)').N6O8%OLN"?O M8VU+G,@Z=YG?2RQ(1 T3Y'O$BW_;^P)W:0G[]RU7.\OH%\SA$2>7^G)&'ZG M7^__OFB2?/S]>5OO%$SU]R=W\T>_E)2>VK*;3+=G(U:Q*!D,;Q!6WY2G51V: M('B.%PW-=11+L6H':,0=Q/8G@R$17>NS0J*D=FZB:H]% IKUJN;X" M(\\TA5:S@IQS B, M3-Q]V90H25L/EV9C/YPJZ^G,PW:BT4ZO9VW.WVZ]L0\H>YR8)1;!U&FDC/: MJ4K=(JE>8&Y11MJH MCDU'AMKDHRMU$8]_?=Z>Y]5K&"KUZ:6#X@^YT@M>]X\QQQKL-F38WSGEX3O' M4F M!WCS\9;B^T?_@'L1L<:;$&"0IMEQL/N:HA[&SIHR7^8VH>(%Q]@:5H" M-\]:F\--CN-5]R"8]G/:^8YP.2CO^$[P)9F+-!AB^^#:EN5&_L=TK7^22>FT M+#_H3M\T: JOH]69-.)[R,;<]-;T[%IZ=9/7P[WVJB<>,#+K57\V3W/++L_X M+85R[VUK_R# )9A,+BF4"_* 9@:30L%D0)9.N61 EDZYT ]OEF-E8OG0=O7O M^<;WWT_[/?R^>A_D-YO]_KA)\NSEY"_2*)FZ;=U'FIME9TH2+P3[@#-WIB-_ MTDS[")\IVQ4M&YX?Y,1C7NYBRI^R2=YBZQ=R8 M@O&T;RMA]"DG'D^(NR)N9M3+>JDEU'HGZ?KH[F._'JR+-HRKS6F,[WPF@]#]<^ MK0VBM2[C'^!>9";[24WVG;3MO1HL^MQ@49EWI&EH$4C;)+-"YBHOQM>,= M^IG7P3YY'=M@+VP:1<$3[.K@P)JAC<_8Z\<[O>Z"&1SJHZIIK"4CL(/=P)1$ M +1'KX/-DAJ9K6>9C3^S=/2YI:.RB"RW5(_;KX3"JJ*(+-:L&NCUXPN"8(9= M42[R0A@)_9YIE7?D-@*6?G^9C;(;>L$RRVQ< IV^"+="[);<$;G"G^9DD?,G MYEB.XE?L?%R0C-V8*$XG&TEQ/\!+&3:9".MV)60OJ5N[*7?:+1RV>[^^EY(9 M_9T:_=$_R4S^ME35]6(L27V*76DT8 MA6BYCX@H[+X75I"FOQO#([^Q:X1?B6DN XHO#10_RNWY9?.YMC;EV).4&3Q4N &K%#4\>.2U>UR*XV.#.WW_VFD2QK$G M[(M'@S_":Q:5I6*#1PC[>7M5\($$_#P?Z M0%G!R/B:OF99_NE9@/YXRO&/(:0( 7]>>RY\)?E0)HH>4Z?&GQ\% -D\G^X$ M9A+$)01KQ8-3.#[("UD^/BJ-K<:=;&6K'B2QF."J[K M0;+XX]1/5P"6DS]*:A^/"X":!$>!0@Y2PX?,&^ )@R7XA@$T[=B)!RQK\$SQ M/6T.W";P-):5 W!74 T/TM#KF@,6[?@ B@K)4,$C*$>B^MT:ZES 4CH$UX&E1)WW T_TDO M_(=;(H4RGP-O,U:CM0L$!Q7_1'#S^'S04F.=?;[VP=+U8;]D?^X9,PV*,]=V M@Q,5#G94O$=A:%O%"F.LB%'@=%WX;D+IOV/NV1@TG;D&^RV#BX5K]R@$PP$* MI.7^Y4([\_U_YQ8>T,23YH,G>L@!IP^, OHS/]T,R-/QC_[6\! ,(Q[CD2>Q4N3K$[/_]>)@\%.(47CR,.(XXMFL3@>2L3BDT+7"\=RQL@ W M_DNQ(F7O/P8M['>R\+^>0A$\5C0$1K2Y9S_#Y4BL)>33>;9B+_AR3E][29GS M^.$[YY]/@H$,-!CZ E\@!843A,CT >:O)*H7MD;_ETP_U%R & I_7?@PY_ M]CPP_!FH'C &ZX4'3>F(/*?7#OE^3GI'^GJRZ4^MX)'VC-9 M8Q1&(>N%.&,65!&IC66@HMV9>*3I')V=I5;'8EC #4:Q&>8D:A-W&N'-T M. V*LN>9)="5.U9(ZLRA(<,F-?=!I65$5,7R"8^OEGA^6X#43LU>: M(W4R]:N*L._R?4G$W*$ZB\#(Q.Q)K[JS)6KO2Q2)::O0+O/+#;QFV&1CPT,?O2OM4MV_NN*&E[K[+:DC[F-,1S%'W.81Q4#XOQ MTMR7C-:D)BXZK15WCJ(/-W1OPG=90>K[? \+JW*?CR!%7V*D12[\%4)N2-/P MEK-FH^EK1$N4Z>3(KKV4'$(H2U)G66/'ZAZEVG0$1K*O1Q:&:[T7KDD*Z>_W MIJZHO4IC&LE,\IH,U]R7UI70-0M1O=69P9%1VL=Q6L3ZTE9:V[5,%UMV4G M@MM927)&?EO1*8\)3<6C$;^BV/OU*H(-CA)#.UN&-SOX2C65HMMC)URO/%IS M,,1,#+7UYF0GA^6U9 \48J7BMK".8M;6Q- UWJD4!B.]*/7=!D&MC+;7,$2@ MH\FAC.MJE9_4 %0\]H M7[$]Q]?ZL&8+VGI1$?A.;4XS'!SZRD[D^4Q160R;RRJ^H&5BCBDR0X!QE()2 M"W0QIVE"?7WU01.1-AR&D6:A-Q4IM[!TD:IX#E6YJ(>46V4E0BB:J%+M1E5< M2V=1==@[J#QB>0-IXQ4;\Q6ZC]C)69+.<5/K>;NMC4B-J>1@_9F.14YT#E7- MP2!TW:5G( 5CS-@X&T[I*#J+JH>909<]4A(0JE]U^YV**^ 4=Q95*7$WW.UK M86"& POK!!2Q'Q/1.50MS8(!1O;'B%"@!IRX;2A")SJ+JJ.=,L2D0Z-I4I)3 MW4<[=-3%Q'.H*OF4L#C@: 79%[5PLF'LT4K7SZ&J7#:6[1;K]$Q-:X<1MAXM M#(,[BZJC$C5I$8U# 5%:6&M1''6+0U8\BZJSUJ3!>UZ+,A5K4JX:H3\-F;/$ MIZ/5]N :7G,J\0ZE%3D_ AX/]^+#4(5(G9H\C M]?5VN35YLU+=5_?M0P_9%V!Q6V+V&ZHX*3.%J(@HO:JQVK5+NK>#UTS.7B=P M72'5[1 QZA5+VO:V6FD$+YJ<_2#DVWAS%GE(1S2V_- :\'OR[)NBR\K=T-CP M?<0X-%MJH3'NVEP$1B9G/YL2E0IIB"8?AIRW.0P&^_ZIZ.7ER)Y46[9'4WHO M=7QPP::V;N@!O'MBG5JN@NNT.RP)VJB%M5&CB*X:^G%7_96/,NIUU,7>Z$HC MF1F/M1Z%UF1XS<2*MA%"#[QN.$(J4G'!35VD(M6IKUMXC#8TFRETOE%A=?T:/^S0RDC?MZK+5;PMV./'+C8)B MV&TX,C'[E1VHXH&Q;&EC=WP?1;;%70G>/3G[MAB9!['?6B*;NM(T10_IMJ)X M:&+V/M6H]AKS$;"FUFXZJ-;L2&QSY[P$9HZX+6?>&@N-,.PYXQJZZ.]T,#(Q M^XFQE#>^WXN$/>5UFI;-'DBJ[,Q4$HU4T2 M,;#:F.#90-J#)SWC(U7K2FTG;X2-&;)EDQX$W34QB<[Y2+/RJM8JC@)+*I2& M:(V8U8;R#1:;-33Z/*V((KG_*XM$XE!F>FIB#W0\0XU[-AR M=-[O6KALQ6%7'==LK%%B;FZ# U*"4TJNZ'YAL4Z!(EBALA3<#EUI;;O+LRZ: M)0GCV:A@#81&8^<2?;2*]@L<&)E8T?UZ4!/Q?M20.JT!P31V#6%>AB,3ZV36 M^3(C%&\*3HX@W-GW4ZJUL2U'C'L MF-K.&LZ7[GH_[NMP:-(OR;4G5\@\5732R P#<&[':P'$H4 M[E6I0]EK*EL1#DVL@*AU.DM_CT^D<.N!LXR=(KH$$7@O3QK@F"IV^IJKUD24Z/_"G]:(>87J/):5]A!)162[Y MA9X.AR8O.S&#>FTC59IF/Z@W:IJ^W,EE\:SO'4PV8V%;;4^1RII49TI[*1?, MV$U_NNRK7@%O[^<\[M/\PJX.E.'5-ZKF2TT-+:VS>+UE5?N^B5/2;?'=A%BIE2A23TSP_[JJ;5^]M,SY+SCYE85]D>^.LN*:#=7_* M5L-]?+C9HP3QB.-F!-PU6"MPK+7/S;2Y$OK:BR3O:7-#-18+S3NF71_W"1SU M?^-T[''7X;C_!&9YW&W0//^89U8-\/S./ #7_WX11]/4XZ;%,:$/4\O?_ZI[ M+GA><*.% ;A,W(RE/UH;BQ -.9]289[3EQHRER .!9G))GUS0 M!^3-7M:97&Y&54YD7#,=2*A?T@<@$DYH>6._NN]Q_ M#ZSW=CANT+7G#/G.4_[U"UQ?< MKQ$LGHKAX86#F%JF>*KW/I6]^]S.\&7(C"8_5T^\A/$*\]5N2?C-D_0[6&E^:SDEK7 H$2*EN10EL>TXN.C;QP M)(^23!XAT6OP,IYZA:?+(#)Z>DQ"^-.U9XR%-SF,XH <$'F2)0$<,!D<9'"0P<&'NPG'],,) M$G1$%-VVY5,(MFBN-)U@#DO_&I"P0IPRTNSV)B9_4"MS9:QMR@&$!/;;/RR= M9RDJ3Y%(!@D9)&20\,&0\"(3!9_F$1P.79^1)FO,E#9RT!&"C1C@B'X%<*!; M&CDQRHNEU*A6BP%N,/YH <$!Q;[]@])Y@D7S!/T68?,?ILQ29A8_E4;+8.!L M@CC#@5]LT7 A&Q[MM=U DUTJ?,J(#[BA=V8S8Z$M@P@^0Q%,UC.'ZY'C8I MJ ?@73^ =(_>A?.<7](U^0H=N$[.RAVUX+KOG"HEC.)Y!C@N&,9>+ZS)@"(#B@PH;I<$?0\?$-SV1M-HS@G[ M1;^^&E=DKR>>.A!C1![%F#R*8QD^9/B0X<.]9D7?PPBQV.8K7K%;D?@&7R:& M9BB(#8@1[+=_*"I/LW2>IC*,R# BPX@OD"9]#RT:]46T93A/11K;4FWE262Q M6HC)G+$XY" H.H\@5^H.?N7RP@PN;@H7-R^Q33]>7#:=^IZMVZ9;;+1:^@@Q ME';1W.JA$/J0-C[.J:),'F/B&.+B.=64[0]4GE.&9L6D=[TE?&GO)]L/2F]V M-;;K;FS69]!OS7&AU+-9PNS0YJ$;N259QKAC,PB4RF,@-F*P*\9%*3.,#!\R M?$@5/EPMJ?HV+-"::'C=NM='#%2?%<.5YJ(B=^SG@B(@_J'R+$9EL)#!0@8+ M=Y=+?1L:NMIV$+:ZM"D8_?9T2DU7YDZ$K9[8;__@:!ZEF#S#9'7G&31DT'#/ M*=2W0:*N&8>^5L94J4+ML?)RN^F.I+AW&_;M'R*/8 3P(:Y2LI'*6M,,)*Z3 M1%HL6>@K;1P% $K8?@AM(RQQX&6\0>89Y(IYS,SH M,Z/_ D;_4>G(7S9_;B4M6\,JOY&T?F%=\8+E5AA"+S^N\%SYE95X9O;_ MJQT=O@ 7#C3^,O&*Q1IGB+G2-7$Z*4;Q\9+QF2^:Q/(X]5:!PGW4 M;"J&D_N7Y?K^OW- Z(KO:P%L%__8Z>/8(-ZPUXKAQ;B%,/R")7<#?IW M5A:28=&7Q:*;NW&IR-;^.@(EJDUQBC]!>S.QR '@@>E;+$]C M&>=AACL9[KR!.U K4.PRW'>95616<1]6D=ZW\4=E5?_\W5S=#^O32,5\4[/K MC-O3MXKEP* IEFQ=\@*LRK0#(6N425ZZ^FG.T%QX>3N!3,,^PD[M 9FTY4Z M4WEKK!:ELCL3(9B0W_ZA\RB:/*GZ[\]<<%ISYJZM/69X%YYKY]RU=I1>5FIZ MKV0C%R1LSW#NLR1B.T>[=O2CS4/$? L)E=*$KX^:Q2&"%0]MLD>M?*X@R@S, MM5(4DL?(I%]UN61KAA@98F0!VDW2I>=Q(E'<@G.DTSAPAME1.[:$*W7WL(H M/%#?_F'R-('E<29C.\SP(<.'>ZR%_3F,T.LXQYGTNBI@];J^4['VT)KJ "/8 M;_]@5)YAZ3S"9,=<,I#(0.*^L[P_!Q=&#Z]S"VXJ2SQ;*XUL)UAJ7LZ(5RHK?\U(1CXW$]$/IGO!UH59^4:FV9EF9YJ= M:?;5-/L64L^4/U/^5"C_A6$]J_3ZO)5>-UBF_Y^]+WU2U$O:_7[_"J/GG1OW MC< >]J5GIB,0$?<=4;\0R":"H"PB_O477+JK2KNZJ[HLL>I,Q*_'LDX!YV0^ M#YEY,O/<94K8!PM?M#W7>QS!^'6A+RRQB3K270&V&B.I7!U:0\*)968?Q*!1 M&L*0CW7:]3'E:Z:GRZD?PQ:%4-F"UH(@DGK[SB/OXZ0!!04*"A04*"A04*"@ M0$$_F(*"W?S[5E"PF__&[O#/3?R*[RVY]#DL-TH7M/.CTJ>T=P8/XX:9*\AO M0U_Q_'39%3^IA?HR2'WJ; :^YSA[KSK4?3VXU+>_4AOKH_5\,H(%F1E5QB&9 M.+@I(_ I+8!A"(C!G\O[^Q!I 5W?RZ"?*DNZMM?QLW,VXQP%)3\&$W[&<#O8 M2 *:#30;:#;0;*#90+.!9N9(LV^]J0W:O'RN(,90V1ZW\DNZJU\^ M.!"O<]9ZV9O4X8:.P>):%^MNI2'^_M=WRBC^*4U^&EA@%7&U8)7<[B M;&+[O7T$0G$"8M /?RQ6[;>NMO)@@0NA5T@7H_A@C5-G_;#((!D A-]!^!UL M+ '-!II]KY50UPI2 M^J^??O6UT RUK^D3>ZH]]YP4!Z"; CT?OB="+!5!A04*"A04*"@0$&!@GY( M!07)!O>MH"#9X-U][PN>-=HSAD5KY&,\NJQ5.LG&;(D4*R/X(7$ AD@*A1", M>%OG.F>ANFS-#IZV9@5'9SOUH:]PX&K.)IZC&.7'(+7/&'T'^TI LX%F \T& MF@TT&V@VT.P\A 5R)M(<:?:M-\-!+L"?0Z/P_SY00*+\P+7^&9)HZV''&"K; M+X4@79/_?BE>B%&T9DY#YDZL03A!Y^\R/&@Z8C_A"T[_.P97WEI\+9 M"[V0*DM!66;-'W:'+_1#&\5@?SI!.-6FEXMNT_Z\)&1BBORLU*"0#>7NAL&A5CW M]<+_O+-6'_4QNW"H9\]1B@++U8-@<'PL=FL%LAJKGGS\IK^?6&L_=[G?XAJ$ M$D0Q7*24,ER<">(,Z;T6% \EDGYV]'TK#E=C'PCF*5;:BN_+3=.-$7A6GO&D M;+2BMBA:>H=-<0+A- [1^'G>#)3GE2ZE.G-<8&3@R-1\-N)@!=^&:H(/L2+' MOOL""Y1>Y2VU3_+*Q*VTK.HNH;OQE^\8!&,HQ,#H?2WPX C'XR*;<*_GM9V MA%&CN=!-G-[-@_=?Y,3 $*WHRQ'?8?T^*2U5=.SWOGRG,JK'J;,EWI-)CE>Y M]9#GLJN&]#B9(7:XEH..WRX[H48_.I7Z:O7&^GSR%B($!>VBK/0'&CX M;%%/E1JE, @CSP_@@5)2#U9Z^L-&=Y*O[_BJ>O1>53W'\[^E-MD,)DXVV6O> MLH= ]O&B1]LOO;:CK +]V^G#PR1HI]S5#1K M<^'B7GI!P_'BTY*=?BYF=O*WF:\K=C%.%^G?*R^P,G7XYNN.DJG"DVO^^+TR M"SPG"O5_I\]V88KO["\]^+L_5Y%_I?/Z\>]5=S"N+)0C//8W/I//9Y;+[T(P M0"XWDLMOXDE +K?"R_-A6B 7P&- +H#'"RG M<@$\EDNY ![+IUP C^54+H#'- M!OUXHU#5LR,R7IK=J'I.-N'_?D'P+Z^<*(E_I9\FB[UK!=?+%^(_LT?WC ^$ M,/,<+?TE&QS6R3/.SU6 M__QFN=._@<'#I.A?)D@#+3C3@BPE#>C Y]:!4]8/\OJ ,KQLGNA7 MG/Q(RC#T0L5YJ7%\EJV7LT8AK*JFSQ(&!3]U"*Q-EB@)%5P]! T(/W3+GS>I MI5G.#<_X'FMAYR MD>^GM[U0>R4T9DY'MZRA3<)]!"5JTDSR>S(F8UG! XX2$(/3SQ1>@79@@!L M-[P)-SRHA%**RZFM[*B^/>B45@.F.9Y1M?B=*"%LCFA!L_BZJ#=;HJ(69Z)G MQ2DED%^^HR3$D 2$/'NL,^ $P F $][(7GA4O- M\)ZBB&12>,WE29G179T@P]K.E \'HF(TA*;. ?V69Z+>.HV@YF[2E?#\!"JH MAU79=R%(YU8\_GP/N0*YY:F[)Z6;MT'+M8URO5!G=OEO/\!Y)"S6U;*3G7_) M7MVZ=-63$I4I7O]CM P ' /\0\]EF>O- &F!-,DYQ37[YCD,T04,8>MZG'> :X!K@^AUCCJ_"-LD& M&ZHHS@Q8H1KUN1.:])AB4VPS7[X3!(12YZW8 + !L &P;Q(U?!7$X2)FB]-= M>V +WJ#>VRR2 >)G$,]BAEAV#"R$$5>,&0*8WR',/\$YSE<*_;T*HUI$5(ME M=FF+1;07,HO^RG>XS,3>GX6$0# #0SB"O6W@+V=1[.QLZVQ>!24(]!"484AT@3C5$00I\?G@*( A %R$Z[07;:ZU > M+R8"*[OH2EPKS;+.$MUM,&/EP[G=* (1! ;!SP:4[RQ)K>M[J_3Q$JBPGJ[KD);(G=MA[WA,]NAD[6U?@3-E,:N\!?;658X\:+ M]1;NR$.5*%D2@82Q3.[3U%"(AAD(I\%^&, XP/C-ZVI?"&UM()BZP,BP/< D M;;08"J/JW$RAG=75PA!&P:EEV(]K-39#*;'/':=I%"+0-RY6S5ELF_/<(/2C@W0MM[#R/=-/F18DKX$M M#;#W>3>1Q'W.[D,LU]SN$%3I')MM[U$/^L=UF=CEJ'3I^G;>F8>2Q MRXZ&-MC4;MN'E1 "@C&0G 9H 22GW;Y^\H\Q78>'PH ;V($8[?I5&@_%AD%D MOE@6A,(9 L*I#]4N+162:I$V?H+GJ?%EN- M-);I+.,'A4@&A6 *Y $ E .4YR0@\Y=XMP;T%.ZQ"0-WEF)UF(@2)TEFBO=OTWY>B56J7YSA"<--X(@CXM%HOILD))MA->M5 M#V$$]IMBW_O/_CFM#LCV 3%BL'5T-]D^)^)[AMQ(*J&6K279XO7Y #PP,>K+7P&_J.^J..&Q,]@*>F/.=Z.5'4; MI_ G,_@S. W1%-@J!O '\+_OL.0S%# G)9CKC^L;>[GCWHS 4\S9DH&AX)$AB8@ M%/@#@ U [E@^0IK/0#F0ZNCH M:M%I2\M(JTQYE-OQ$M.>;D.!E1$XBT(2-$11.$3BH%,90#= ]VU/U'P!J.'E MI+$3MFN-UQ%[$-?5I+-.X@S4Y)?O) 8Q! E1Z!6#BP#4 -2@1]F;X[I68N&Q M:_-=6.BY@+,*X: MQ>:F7O,L4:($24!7K=JZO3?(]W' K.41G5KDX,A<@'&0HOAFM: O>0EO_%D= M:Z16MF UUQ6TZW>JNP- L^@>0T$PD[Z&G^WN??]IB8<%*WA&0;,"];1N!>^T M<* [VE[C!,MQJ3S-GRP VZP H "@ * H "@ * H "@ *#X&*$"N4]YB M(Z=1TJB.&PQ -OW$]Y^WSHD ^U%W'9V_UKOYD=C+$0Y3EFS-M__D_[SX]:.KOB9 L^?W!?+ MGO-$MO _KZ*EJI[JCW]:&!0_X>^'DI+D85[[I][_^W\>/OS/N%KQQQ)F__OW M@UG-]0P*W] ]Z$R]./-UQ2XJ1GKC;XH3*TEPG"7%?,U"=9ZOI;\Y26&_#(7T M;8,1_RP\^)PMQ]E:+I5M\<&*'3%>='0C_';\L]-W>WS^^-(+K$P\WWS=2>6T MT;.K/[KN7C"AM_J&IB^!C+#2'X\3PY&O%'$E43WA1>RG8/ZC%.9^!OM_##O< M$VT^7"3[G"IC"F_G<-GX\+S'K[Y\'V9PRU)VLCRG+ GRAR8KWQ](_5>Z^GBI M+ZV@LJ<(6248!C8H358-#)5Q7-=D!J-Q6644!35H!8-)YLOAKLJ)5"HN4S1J M@9"(G&A:O+#K8D8W)149?3JRRY8]7Q'+O*W EK"=^+B%MV,9/1\YT362K5@] M1I3()EF>ZSXO![UT)/%TY(QO#"TI,2?\H!\IXXH]##B534?23T#BW9W:(3H56$7PJ\SS/3J,$*9C84?SJTI4\]MH6Y M7=M2F9%?;15]>1?+F P_'5EN2=Y"Z&U@?D VQX*W6)0Z+IN./)M]I=I:2QNG MS?.Z3XKUTKHM":U>.O)L]BU2V"1;C*S:I-,?CK>^*V(IH6/GLV<=S6ZH%-^' MK?*6(-JQ%S0'V7.>SQX6>;3NU"LNG *>'#'XND8$V47/9V];7J<$^W$ -Z:3 MS9C&Q(!G6!D_G_TH9GH5J5+;B,).<*-A;4@TD)Y,G(\4_'5OQ(]BP^Y,R%28 M)8SK#;*#0\]&^ANC(D[780DFA=&J/FNY6'U_8LOY-1V_WF@H\X6=&!5?)N-D MJ;,]F3X?69LVFX&K,V.87/:2Q6@S[$V%K&_AF93F;'M$,(BSM:-A.&HU9@HR MVF;7/),2'K-!Q2I:#3'IE&9JX 3=/IU=\TQ*NL.3]0B5#'$Y\-9;&6XW6W1V MS7,I35C9'=:I=A..O*[=GC>H*.%Z,G,^I99M">PZ:&JPX@?-.-PMA06[KRDZ M&XJSE<3PQ"%N=^I,*2AM/7/(]+(X_]E054/J-6&ZA6&TU8^UI3964I1DML39 MT'FR&%-CH\&*"EUJ>BGMS#92.O0"2+H[AJR.FD*9)YIA.ZX)*$:PPUKW(#/BH9A@1XQAQ1TRO>D&GE/EP MM>2:^HBWMG+?M=$&.9+B;.@3[9<-5$,I))TOKJ>_Q>F9*C/$;":KN@XKA*[C MC''&E31'KU=%1S%AR3+3AY:[1%V\R)7M:6_=&;!>6;2$L!((\YXJN!>YV5,1=@W<2U!-6PB89501%@I2Y[ V'%_BRDCIK!F:&@AV M$I2\G88L2D3U,E=VVUPW2; H%J70"ZM!HUM)!O%%KN0CJ3>GX%;+;JP&,[C$ M5F;CDGF)*_&@U.K0S";D(X+8AD$3D19Z[Q)78H2M%!M]GN6%1(^P%CHI6P1[ MB2N+,[OF,IS!P6O*2M_I*QTQ]ZQZ-OMY)5ZO.2E=T>+<)1 ><>S>O'>1*WF: M["E$DW+3*96;S:15FTLC]B)7S@:ZO5[Y%1;FIKNZRP_P046(+W%EU=V4&&VZ M+,/<0IB.2*N%CM/[XQ?>DVU=M%8C5[*%A$.U.6E7N4$V\FSVB;"3*!]?]<6H M8NE+H3,=B3T=238ZI?)J-#/AXMC%=J-B=]AM92//5C3L8,+":Q7GME+"YAJMQ SA M9'#0[$'/5Y0=5IU!F8UUWNI+*-N4N&;L]BZ]45?$ MH.6.YKLI;"&S$J%MO!K-Q>G(LQ5M#(@QK6WZAHAV8$ZWF(BO+K)KGJW3B-II M!KJM1O# +[6'?;O="_GLFF>S'RU3>Z\RUQ->\*.RU.VD9I607?-\]N*$\28; MFQC '%=:SJ@U7VPOLXN>S[XNCJ?=,&KBMLYO#3;$A/7:[UVR$DKK&4(49S4< MCI2UM]:+&YN*,WOB;/:6YL/3I<"6[(&U";FVQA35)+OFV>SCV=#J;A8]3TR* MG(!KTP'17V?7/-,2NEF$M[-P4;*E)K9!"2I]2TVRD6?KU.W'[##<;4)['0:3 M06E35L7TW4"=(Q19[1H5J:WQ,$IN2N&L"^\&C6SD^8JV:HT*4<4Y%I8X&AZT ME6:@+_?'WYVMJ(0SR]JX9;;Y".EM&7%4=<=C]I(UU5,6'..LMP.>]'8+TS"2 MS:1QT9I*J-4*:W&U7?J2J-8FAMIN3.+,\CE#J,"/1TN_T\/LSLRVR=VFGS16 M\26[JS^6ESO&QYI\I\0N9G71][5E=LVSM;>K@=M**L&6M] &'U4<=%"$YK+S38T[)4X,%RY3QNH43T,/?SV0N.)-19/%CR MB5KU=TZRJ4PJ^_8X9[/?3;N"*^$Z)^K]8K112S'22C+[]'SV_M@1](;?JHI< M$5\OQ-IX:H[,RP:J-&VQ%%+W[(92*7M(LNXAJ_W0L_ES'#6 9Q$G\61M.D#( M2DMN8/NA9PO@1CHQ-75F9D>5G3)%P]8!$:W0E.*1E-Q MG;K?6KX(J1+TC)9GF$;(N(HH,D/3 ML)P:OC2&T@:BJF<(6_96FBY=O;(#HU&P4S6"_%V'!LQ4LX MN.BE2Z7!( A6DB!&)9A#.WW'\%H7O73&+S;7VIJWQ$:ZR@;>* UCR;QD>3+N MJB]O&PT/%B)UB>&XIW')17..I;[<[YH[49$;2QQ'?BBERQ6PS5<"1U& M;"#S]!7++>CA[J*7K"IFBZ0"O@P+0\QTBTMAE1H#E]YJBMNJ*T:%;J16_V2X MK0W5LCMD'[S5GH1(#W\WD]M,6>V6V!(G2A.Z76D)\:Y7C^5L*'H(?.\3S-CP M=Z,SKO_%/3JS9LJSAB;:7)/K&G91J)"]WOZO,MSMX]$_0IW[N&06YG245:!_ M.WUX&+++(H/'J& 6'U,/<;537'"@[] MTX,=;X@VPMY$/![<&TOO9[A>/$I_GWZN9AMLWP[!'7C=(U^ M&TS]\7ME%GA.%.K_SN*JUPIV__%NVH._>T&\_V=<_,JY?%<6RG'/87_C,_E\ M9KG\;O\3R.5&12+H#'\BH78(_E4B[ 'KNF7'[?>. DH#_:.5$2^PK3IS*& M'S4DJVTA57Y+*YP*)'*U$O^9/;KGL5!@YCE:^LN)KO@%WM5TK5#6U7TOY,/* M80AT^(#"*/J??\V^/ZGG ?#XL/! 7XN.4S^>#X..PYD]C[4_OP6F]&]@<)#Y M^;] "Y[7@NR(%Z #GUL'3D>" #UXJ:-"X1])#QX=( &4X7.3PK[CVTMMXZ>I M>CGKR]C7-[H;Z:"C/^B^F==^) Y:'WLR\'^K<'@VY' M1#<4=VM-C)C%4*:V'JU-7WS6V*FMQQ',EQI[B)-&QS'*I1T_Z."=6+:[RP N %Z[+"P^.%!VVEF5^W0X]&U4E40J'"ZHM MO[K+SS-TH'2,JMWN4)[-;?$N&W?,07F7%3"37[YC*,0P" 1G[6( '0 Z '3P MSF;"H]-(L4D<<;WMC+&E\48OSJ-.>^V_^)3A/Z $+>CA?E +6S:JTQ6TO/%; M*S6C!":U$&B(Q@@(1VE "5>DA"Q;)6?+\!:4P-QJ8A^%$GYYC"FGB(%6HR,8 M7N^*L+_RHFX[Z5V!'"KLR$#-LA;;Q6)'I&$AV968?<'=;A)NLX,#GPYY*T1>.V?PU'()GNJ+(BUR>VWFA&NA#H M]&RS!S;QY3N#0PB,0PSUVW:?+PJ!WE)E.2\(LS:)_AO'/3\E&]TNLO_;-;FP MH_%7_'3CJ>::K'(5 \T WC&.C'?)S<%Q5S&T>2CJ PIAN:[@(-6L>1GVY3N" M0@1.0Q1YQ4 H( I %( H;A<4_1T_&+W1=LN4%4/4.:$C1]S*V)I9*Q[RRW<4 M@V ,A5#D.7L(\ /@!\ /=QTE_1U'B MM$2>)/A"5LDX2">>Y#9L]-$!%T=1? MPB 2PP%'O&E<]#-P!).+J7X4CGBGL.GOV")L#ZDB/ M]T6(;/8/"BZ-I*;,H MLM@I 2$, :$X#-@"6!3 HLAW'/5W2.<1H9D,);XGKMU5C"15U&O&66PA"Z:2 M&$3A#$3CS)L&4W.V)2#X7A 45KYG6"%(*OW0NS]OS6-@"RB_4=4]K+M[5%\Z M_'TZ<_AVZ#3MM1",?:769IE)?#@\ <$@'$XM'.**%D[.@ 'X ?!#KOCA:L'4 MYVFAT^S%C>E,W=DZ9MCU>JL^QL7C^2<,Q! T1!-7C)+D# Z %0 KY(H5KAI" M?9X9?+H8=\?8JB0FD\'::]),?X1GS,!D$1&:1""* XZ7/ WPU MD T2;?<]6_(F_;X2;BJK(#O**(N68C"$$42*\N=2L>XK]5307=U7G$(JLH*B M+2W7"D)_WV^OH&]7NAMD[49 .NJKF>H#T=*GYJ!\!3X/H&5=C7T$6?Z V NT M5J0'Q;;#J3Z?Z&UMV($9<@AG!X]FP5 <(@@T=7"N6%H+H ^@_PF@?[V8YHL1 M/US9;,494ZIH3;LULLI/EL+43!%/9HX*0<$0A8&,40!X /C\ABM?#'HS9O'J MEJ<%>-U;5Y8*R4L"E8&>29T7""<1"+UF"/.S@?[Y@QSN"/2_.Y,"@/X6D<@7 MPU]H]"QSRX03OEAD)*J[X&!JU$OA?XA.XC0!83AXZ8.7/GCI7SO(^&+L1IZP M9>>NU10[\H#N#I@Z71+WV"6^?$<1"$XM=O39^HW[3]-4++?P_QPO"/ZWD I< M"0(]+&A6<#K?(]A'*:WE2K'\/25#!5<'"9W7WUNY=3;W;?=>;CW[YVCS;#D* M_R^_=M,[!$93!FFF_-%Q!RF]!AV#S3@DR&@X^U#[01W^1=%G_^Z5X M@9!5NMEQUPQ:$3E5,VKQ?-)M=&.9RD*F& -A#'7&Q?\+]GD!%WU:+KJY"9>+ M0.W+&>@I\>O8? MQOUZK[#U&_I@-74;L2':9?F&59;7]G)+E3@VY:,LH(U")(8 'PP80\ 8RA$A MO7$<_0W)9%Z3BO;"JM"V$"X72!,UIBW!S,B$V'=9I.#SZ/K_WFM>;\U5O:5^ MBJ8;OK"O](#J0T?M1N[B\8>]K0'+W$O3N''#MF@?,9W3Y' UJ'4*Q1A8L MBA+78.N&M(KF:"S3^U1@"*&IBV=NO9U9!3@#< :($MTD.'V9*9X2!%'L.55L MW@E%I<_CEC9?8ILX(PCRRW<:PA@,HM#GVD4!?@#\ /CA7J/(?\81 E<;U]FE MZ]KZ2,*&RIIO](MFRA%9H!C"41Q"KQDK_FP71;HM>-9*5S<&9;9 %=C* A"C\_S0_X'B!!&20HOVU@]<]> M\R6SHB3S*585BRY&2/.PI<&#/5RS@[@@E$(AA'ZNWKJ4^C'*4 B5+6BZ"$*>MP]YOL_[&2@H4%"@H$!!@8("!05MUX""?@ %!0P* M/.'+GO#/W?:*[RVY]#DL-TH7M/.C-J>T]P4/XX:9)\AO0U_Q_'39%3^IA?HR M2-WI; :^YSA[ASK4?3VX=)A!K2_LK$I)L7@+=4O>L*YN.F@L(_!Q_Y["2(AA M/O3^?=?W,M"G>I(NZW4\[)S-.$Q>W0+]0!A>( 2@!* $H 2@!* MDH^:K/#^RW ?60T )7E[E]QZZS]GRP0R)'(2%QHJVV-B1$EW]-NJ/B!EH9P/B MU#F*4_]B;F C!2@H4%"@H$!!@8*"7 F0*P$4%# H\(G?*E%$V1IW/3_[ M@@U#WYI%H3)S]*'WQVD29H#*=%CR&;YC-F;X8$25V[R93>R0)H'A,(02SYV. M?O=I$K7?^=@%Y<':%D*OD"Y$\<'RIE[Z87U!7L7'W@L#Q;8@,@\T&V@VT&R@ MV4"S/Y5FYS#G #1( )K].?,$0(.$3Q7J>"ZTP:?#P^32F?(M1IMB/;MA#QA\ M.1.VD[K7Z,D(=CCR!D(0%&(N'/;PH;,%SB(9Z7+O%5L)=:T@I?_ZZ5=?"\U0 M^YH^L:?:<\])@0#2#$"(]^8AWO>Q"("" @4%"@H4%"@H4%"09@ 4] ,H*&!0 MX'N_UO>^X%GWRU')5+RQ:T?.J KKX[+>-;[WK&D(12D(P]_6L\Y9G"Y; ML8.;K5G!T=-.'>@KI.7G;.(Y"E!^($8#H??;BQ1H-M!LH-E LX%F \T&B0! MLS^?9H-$@!S./M]GLEXS&E%^X%G_C$>T];!C#)7M

F!XA*!CGMC[DI DG?? J\;__I_@X@^"'/5)AO[W=^"M M%@[%:2S9G9R^D'!F*#9@CP+Q[5,1D(BGQ@XO\F M C\C$@@GX:_NB\6HAV3\2EMU L?,86/^QQ$+ V'+_^TUR6'W!WL3$S- 4 M_ I.JL,124P"=X!N:"@=(F *B:9IX^?8*#^!OT>39(IPRET"[(OR%0\AWUY8 M+ 93M";BP,27=\RA/]XW JL,,T) XY9?$'"G\%; 07 C*QP$.6-'4&CS ?_ MOH-0&2'6D"$AV\ A(&HM1"@FD(<,S(TFNH0+[1Y0!>];3A(0?970UHB[/4O4 M-87>E:?'MEUOIP?R5 U-#;PK?E4G->0FK/A-)\_,7JNEFRG*+@Q#!VA$_&S MC8D0D-8ZM!6@GI)W6#:A3KX@?<_B)X9(A*!'F@X@5+E:#__'!2H3Z0.(?40>\)@G"(;" M@!/W "=V@7K0(D)A_0.^(<(A0',L"A?$'(M!-Y!9A!9@NB;6*1I>V@G\ /!J MLG'!#!4C0]%;2+LB)6VNNM0K6AC//YQF:TE?OQ M!-1A=#R23B7^",0^*B!U3PCV0537&;79Y!NS/,G--[7)4%N-+ 91G8G$*.J< MZJ+C56 Q02()6?]4(@\FP*E$%AQ/YF#.G4[A_.7"/ '_!\[):W,5E2(1__I. M8O>68&9&EC6>@WM_69.Q6_3C63@2[[@QV2BS&6=?2;C%:*O%/'(74U%03FM6/0 M(F2VSIV-"WC[:8[;)5_H2<]5X7;0\8:NBJ&BBOKG_!?G>[;N-LER>?K_F5_. MHT'3O]^.J@/.M!TV<' KP*#RDAN7]:PL]SE[LLVKD_Z\T'_>F>%MQ78";,1, M5.&KBI"Y@ISDQ=\0$X:4]BB]SDBM5FNIYLC58L%7XT:\D53_D-(6%"%@N5&C M^X;LUG/[M66'DT1CNB+RUHN:NCM M1J4)\3D.]6":/G<:''R^'TOH6:JJ@F9LTB-))JMFM*D+9W" BE= JENVEJR=Z=?2736:D;M0T.E$)!D[;\=] MR?O$(3;/[, 1\B<8\++9X:<2X"-LN.TOZT[TY=>J #]Q<1V%^RZ>N*6VY=/\ MJ%2NFEE)R1=7Y;' )87Z_!5!VB?]K-XA.<*9I@8WPN_4&H03^(DL(P/5C7= M8$/QDL],@GPJL'PM9?7QP&(VJI*X*B>5/ESF.6S6+P]KC4K7([CA> MG&Z+.WZRFM\LCGLU2WW4 ! $2WS M-+%ZJ&$XFL_KK@[7"7&J_IIB0NE$9&7282J\H7 M,/G&':J3;RO;I!3=U%L5(#9Z"Y3&8RD*8KJ*.E#( M=4=1OE?M^RZ:6@V9:'S*KN+4(K=*RVVE]=Q1](^*2I&SXH@NQK: %!]+8$]1 M9&%DH6Q,C(HPZ0M1J3N+]GV05%V)NC,V&6^93&Q'TB*8B?%R<[:W<:XK'4DD M+^2ZSN)ZK\Y0'DG2$U7N'UW]_'Q]_BLM3PZ3:U*2)2I!I>D8DTS_>JLU_%&MN#>(314A2:DN='23,N UI/C'66!"G?,,O.BRI)ILJWI]U<=D#%.:O:<.;-E-MA4Q&V^CCL M_?EI(<(M6O(.J=V/7&1N3Y9U?IW?3R2139$-J+ZYU9J\ K[8+3;784? M;+E^KII(RY/UJB 4;[ /M7Y";IGEHLYVLPV65[:9%%O?_/HG0<^G<(+UDAX;=F%%ZL!CGDN-FZ+N^0R[;AT,$A] ?WZ[X2]:>Q%IR%U;:BP7_@;^IK M:HS+?5H@E=4T2W8-'NR+XKZ]K65N$9N.Q1WS7>!VYDF5,2J:%FSPI#& Y1!3 M)T!V%+73\,$B \?MX#8X\404_3&= TR([E-;EASZ1@CX FN11[XW D7XT(&I>5J" +:A026Q!L04 )68B=M#I;8 M0IG8.7P)H4_,XQNWISH6W9' MC?.%6FPS&PLW24;39""2=Z+Q<0@"G5F&7&7+UO$9 T$#KO&%(PIPU ((<\2< M)M;U<_C1G$,6:X 7#HQ\GJ^&3]$U PHNQ5\O'HF:VZ@X^BAZ/AS<*)+S "?>AY%@9 E0#%#%@J4/&":T.%$F4&T M]J"TRH?7/3!&Y(E$I&I",U/ ;^^0UG3ZJ+G)633$E@54C\0)T.HR 9I]-H,8 M 81;R34G&D[+-_-VTOQ<_=[Q21@>NNH[Q 9N",O/5X.5#8TW&>G"R,%L/]AT M@0]U;N=_8MB8Z7#$RSQ\$LSU1 A\Q05 D3_WJWA1#L8X?&81LLAA9QJ'^'3= MT+8BLC;=E/GL0&4"VMH>S)@+*!A.;P$X&%K"^.N^2 3.7P<@E$-HA, !+/0M MG1,=XU9SA(^\>;7=(E.%8;&9"T<%#W #8%%@;!.->Q8 7''5]0!<=E$,- M$KZE_<%[,V)N0\'%S1IDJ",.G2H0]BQ$*, &O]@Y[194W8:3VJ93=>-,B97W M@3;X?:&=)2J0Z@YQ;*?'A#9%;A!F(G^!& MT2 \71@,G%5N%I PW!HZR.BO#T3S? V&_^,E CH[9V.6Q&_H54_XNW;8HD-\ M>PUD"'U>38?F[PTD/ =7BR+1J(,%,GE,S88.,H)JB,(HE*9:)^4>J+#E NT. MZ\;$@&:UC"VN2P5YIFDK;DM+;JK9SBCD@J)JF#]\;<=M]9DHR#^X+(R0$3F< M3B2!];K'IVPWR.&R9X"3;H#)\1@6_!I:,$$14:)M:TBC8<'&VI3#44R79$Y- M(L)'W/;-H8T9)([XL4;K>UZ#AJ]1=N@>, V]5_2#.P<&BQ! Q ,%G-E%<2(D M^=YO$6C;HY8?)K$Z(@XBA0DE&1F/%PGQ]\D71-4GH[\*9'PY)/X;?=M9<)!K MCI>*QB#C=HJ:YQB&!KUPIY1J%QP4E#V\2GL*>13N&8>B*%@2;(C$6!>YDG>7 M.\G G;R$!#YA4%@/:E6' '#-ED,A5?-(@$GK(=7A:P$'S=7. 3R_,XIX9A-> M#7J-(^L#O@V/2K3@ZS@JRK%!D( : +ZWC\=.#Z8-II &?UJA!=Y;5S+6^,4\C2.'H0^I*+Q$@(O'PH].4\XPMY+>[C+BW\4T\. M')G%EU)*%_TV[-)REWG#W3%\4C=HKFBH*M($.#CQ]+L35RWN>%.Y\;M263=? M9V"FSZZ/ONH2 X4T#$62)$,GW4(:[I!@G;#98KQ.MO/]8H\3&V0UUC#,^2<5 MW*#Z7M'"2)51<7H8VG).?."Y9&,E1D]74KZ9)U>Y]#XYW5JJ0,_/DXV7QWUN MLO%-NH-*.S7/+DW<>H%>&6"?J\XL-5%'%8T-'N^N!SZ2.!-<8\ ('450=XT:AGA6K"H MV#Z"M3DVDM%J-E?SD<0>*5N;7 M/_&'"V?,(7_). H4/(XUU53HLSEBLX8/TFS3K\#RB]YNVK$CR*\Z=*X7B$TT MZ)/.78L+'TC D;3OP!$>SJ.NK:AI:\M]Y0-Z9+ (7.2'MOUH=:?F<$(.ZU-^ ML,VQJ6H2GJ#377%KM > MFP0/,KYD\>>N9#A=>&[PHH09_M\S>N!_X@7&$!'L\\[< BJ-P5MT(L6G?X6* M OS&Q^'03V=_=F;&R2]$#J=:>HB*;2 ,?G;S:;]3,I!ETZOM@0%4F>VX09<3?A*IA^Y@KH?%6LA2T7G M#&AB<_KB@6@%2N3/ISLBZ,+/3ETBJF#SIT1%1AUEZVYC<>MC>:]LY,)P,D:7=/=$Z_H>W@@.O F'//4;Z(+UG!#ZB)< M7!9WD49CABABE^5V#T19?2XD!!$).+'@8QOOE28>-!O!9#:&-"\4&;(?[=6& M%7O^0!V]L!XMNTY?<%C"050,MC>:L@\@6N)0D2@?,O;X\ MKM(F+YHD2))283^JK83E!IU=.3/V_OV6PYSOIM?;;W_Y5'H)ZF)25!X[ML3% MRDVJ-"C-EZ@RGKY K],V3VY7_9/2"/RP3R'M[5D1GUQM&1KT""^3ETSV[:%N MEL?L2F]3:FK?*G5CB+SGOL=/8<<7:9;1S.6 !W.*!::VZD:IQG;$MG_]$SL_ M-OHJEIRC!R)U )]XN'W!-0XM,+.>ED1GE\+-7C>]9 M4$X&$.'+RN9P@@T)33"'>+QD-!+7 J#J>AP4PR1$HH77@[++@MOA%AM,8(ZZ M8!TB4-!6@::/Y=14:"?1*51? 2$%37CIV:8GCFN<+D=/]I_GV'J0GG[&S_WD M>!^>H:O..=QD:#M.=C*-R8?XO[VI//V%;?@C4],]C( KCIPRG=MCQ'G)]'&' M%,AC"<=L+!ZDQ:N].18GG<-V.=Q)T90=ZKKV+MI(?,("285M>>E& \QM=Z#; M3T8'ENANRPQ9S7^Y3A(R0>:>=_1 X%]1 AK?L7.H"<+%14X='S;8W0=H4%ZF MFK!SI9A R6=\"8^A60CX7:YP.WSA3C2JB0)SD FAUZY!!8@K7+G9##$SFMEY MB=U!3-Q@O*+AZ0*OXJ[6L_VGD,_5H+80?9GV"9Z,^%Z)E\UVW";T,"2LB@95 MN>:X(NX[0EBQ94O4 VO#G&5Q$DH$N&=J<"G) ]%%'IC7:OIHOSA_&UW(?''7 MX?HSNB'*P=6[];1NB9[AU+OJR.MQ7\<[' D@I35%Y(.LX#[&=0]].O/>"Z,_ M>K"+*>A7$GO2BF9W>,U5T1XP^*I[F,DADKI\!#TH+D#]8]%W-LR;X?S!_AQ( M&1TFP4O%54!'7\&U.>I<@WMR_!BTX=B[%E5D*T&2N>V$ L?7+BTB0J"P&]HM M9R$8=U$5*Z0Z5#&FB0N3W(K1XR_Z]8%/JT43 EC'CI@8*!S!\:)I@LXNTY- M!9Q)=2JH++>>^;A<&JX+^=2X8,.1 ESYC0JY'11 Y;HSZ-*;1WN*Z+. 3C,T M"GAL$AR\5_\TV3&9[B*_(II>Z82,!!)C!R2G ! !4;Q@@TMIX&"W+!$.UF3; M$X07-M_I7XDK.MR#CD=FZZ%7(#))76 UGJ@]1Q84YM? "IS]"U;,^$?D\#;B M07^YLBQ#&_D_GO1^Y-8&=:A?KGD>F7-4B+-@K%N/'H)Y&-DBF-BB@=D;+1FX M_.USI5]#[A9D'V^#">9.,A=7T" HA20[G])9B%-K$SA7Z)3U>_O]1&O(%_?0 M@?T+F_CAAP3.8\*O%8)#1AU&VR\9F!Y+,2!'\59^>"#P<,B"DG(S/8 M)/YRM*-[-Z!_IL [QO4?? +@H*FZ.3<][S@_'YV S9B3YBP8 C$-:U+GEIJ1 M\R+'AYY&<#%N6X96KYHS@"Z0I**L1\W)9KMKT)EWYV4S+L$Z/KT:X'(R=LR6 MESE6:3%2UZSGQF:NN8ZGT8U>B8?S^\7]9.PUFF*<4(Y^)>7RVGB[KR:XL52M MYI/QZ7"L5KCW9[1?3SFE/.CLC)ZR9FV&RH!^JYEH].#Q1?[,!1"252WL31QH'?PK5AJN='H=L/=R38[5=CJII!3!;DBCA%UNORM> M%0Q*Y5'\?V6C4H*S+(4)P"$>6T@> G1OP*6'.XX2G\W[\<58-3 M9)XM^I\(<5!;3M7:%O4=ANXN/,ZQ#I^E0'(PCA^UPOKPN,%6P&&)G!]>U9W> MD7X(T3PY?H2<13BI;WT%=_7\;5&25$9D7..BKN<''Y$F0ARVX53G.VTI4!69 MTUY\#2>TL2F,C[O!?4"G+QZ(;+#]K6CZ[^98S[NS/44IVZ.[@)_L<>$V[W"M M5WQDYQ7;_91VN/<(]WF-^EK.QPCA\-,2WG"B$OS%4,IGLL?& ;AU6#)]W<.,#K7+HC M*/0OET7Q8N>$[F??)7*GR3XGJ\"YC1X()Z[A)AF(1,2M3*EKFG"(@915= ,B M5$-=+\#NI0*.QOD%4X*V4><&)P#A0M0Z8"MXVREK$&SP:49WX\2.@.R#"ZO1 MI!S'>--RM!^[/6E2.7@H4_G:.I&Y^V2D" M/#T3XZ+IWYA5X4)>N1(O98].M1R2]"^9N*]">6CQ!_O0N-2_9GPW^ZADQ[F9L<49UJYWZ+#R[#G)4F4*.D-] MER&5?BQJ[D;S>:/9OM+)QV/J3H_F#/(I:H*%NI$[=;:HT.>H90PTNZ>?L^GO ME:!/KYF/^(7R+;:3B_@'Q]!=5? + & C'.?H ;]0(2_/=U[#A4.E!+9>O%-Q M/)Y9= !9P8?[.:BKY$"/,.=9.*8#W3O-P.4 Z*8#%$4"@>SV82Y4QH"MLB>^ M G$5S?I - \%5;&(:Q(%HD?8"QM&2_!;R"CZ?^BHIL&+CG7/H8N)4 ;2N^#W H1RE*7"B2HBU94BN9/8<7OTK-O#+,-#C>DXA$<7_?$XA)O3#-U- MLWE7^_0>C85@96E)K,]JN[F\2"=2;XZ4>\!Q817!X.X 6Z)>QT9GE!%HQGT4 MT)4',8GI-^> S,UFO;W6[M7&.72KRWD.Z-\$= V@5EZ(^B'>!G?+88 ,/K@P M%]?8LL*]UIR*-_&P:\=["6%*8_]JON,@M\*A&E)\N:?'2=BB.P;" M4^CZ]#/83_?ROZSGL[O@7U[%G$N[K5V[QFU;0+W*'(6\##W1*!@->@>E=IN:V!$,E-&$D":T,X\!1AP7D M:$,_C0L66CM(@-UHOX'HLY#@EJLIBI, T[SH(N68!12V:ARQS]ASN#!/Z"G$ M%R*J7^;C:#]3OA74;?%Y$BL*PW,]:B8+-VJ"P'-4[E51.A4B13EZ$"<1PWA4Y M1Y?8>SQRQ"_>2-%\"D/^G^F6PSG1.^_R(+>XW6M-&B+*GSDX#J@'VJ"<-(,] MLDV<$Q%'6ON)FZ"]:- M=U]8YY5QM!PJYYQFN1?%,#-F][8^&-<FAT:FDY,YS80^'YEG6LPC/=4YJ=BU+#;'VDVCF($CXZ?9T2TQG M>Q,IP;&TO&WG=,G2,IL-''GV]%6U5"DIV]**+3[RJI1HJEQ4:4/_^.SIA<8> ML 7XN#Z8#N.K-*-HY-G3A3(?SS"[B?(IE'=Z--)W=[ D6?K+)6$@568I_-2LT+N*%+(-A-[-.?9.A6+7.DM MFE-((#1S%L]O=M/"9I(Z?WI"-K;%5,7(D\6=+F^5-@F*S(U3)9,K\"V^/)^DSY\^2%O-[HXM MUON[!55=,XF-KF@9./*<0_@964K$'(LZ=SO6AF72FV M1Z3-=E;K9JV35>KM"46>/YXQZ$ZGM+4#=36+58G)198>%["A1II,LS>!9SQ;0-Z."5MSW1*DH M3]H+OM>NM\MPU@LP(76-Q^ZZ4=2E:+E3,=.M/CV$0D5=P EN51IU1#*5["=Z MC&VMF;Q5FN*A9PO(18>U7$,8[_K=]F,CNTWV*MLE7&O\? %B*9IME:3J@ 1] MVA9:\4E1$O#0LP4\9FNQX9HK9UFQUXTWYNV5D9QMT%!O 5?OA\F9BX*L;8(' M!0\)'O,\PR/U5OU$IK4%K#VN-;/[SEJO3C*??Y$>RNI0)P<Q.KQSFPZ]4OXF)#5+LH<[H)?GL_!%>*ROW<4C]4],8[Q7+>"G!M(6=; MFO>!4UB(/SFJ/R1Q_6.P^/"\OM,RO(6Y#Z0<.EB"[] " [>W=\EF:;I7/$D_ M))A_!^GG/LRC9:",+S Y*E]"/.J1S/L]NC&@=#JEFAM(I!=+)/V_E(723Z0\4-EY'DIY!MM^D"UZ__^:PG/T-_AO[\W"]$"43@!CRHN M$>GR>?S4NQD2>:+2B9P1Y);I51CY]L$HE4![5<.J MSCI5:<@)%!ZB J6$K_^H6*19/HY.7^'B7)3>P1WW[2X+3"O8Y/<#4I] M(BY]#VOC)T'.M4T+)&4])&1/HTZ9TEDIO4L9_6:_)BXG:4W4:51^"*V+6"1- MDY$T15_/P+@;.;V9-?$M3(>?)+37MA->(;2;='LW6I/;6E\IMQ>% MWL#< & M"FT"N034Q:,'7RB<<8<:]O[=H6_K -TA&6[A+YT609X!X1W0)9224$I^C)3< ME\O]XOXWT"4'J,H\V$3B]_\O@%=KV=$3N9,LSGKHF9,N$W H;. (""CNZT M#.!<]88'N=T"VERTW5)K9$>BAP;9: -UN=/?W"W N1I64Q1-Q9.7\97K3I.4 M%B2K)@S034W.QP7-\%H&7^PC4)57^6D[03=9(*3[[>:BG-_TT.W.3(0A+]P@ M\X8+-SZZ@W-T&8-[R:#3+ QU=O5[;!FH=P[\ M6^AR?667*\S,WBA-7>OR$E%.)RJC89OO--MN4+'.CK+7V)(E2 M,PS-1.CD.3:%B!(B2H@HW\*XN0*B]%;LHIT:S 9LD>W-5L*R3G7ZJ-L+*C%A MF CUG6I,OH*G$C!@708J2?KVD=ND+++X*!>I5"RZ7\NWM8[))14=)K.V3C;% MRG0KEE@<$.S/)5,1NATZBN7<[W$ M[3E-11=4(8[X"WI.C1NFX,_E_WF##.[;/))_I<(IJ9O82O9M!_]]GP=XKJ)#L ;*J0DJ&EDDE:J=I@:>I85%$% 70NH(.1^. :@ONRIH-E M!4PB%6%2# Z5D6](PJ([\;RK.M$ %1W-@2LP-%E&5[F=7@@<^F>A?Q;Z9S?N MIO%<58=WRV]SEC%-8%TJO8KI\WQV5V"&?5I;9P8+O:HOAW-T@Y(3EHFG(^DD M$X9F0M$/1?\&/3GVP- $SEQ\L-17DR"QE/A=K]_<+MGZ0+-K^V8;27W"87&* M_OO;A%;P):XS8+AWR(OJ&AJ1FK%#*2K=T'2XOY8IG M"PDGNGO<$\U+L>+);K^*R6#)LCQ=ME]!!"QVTT$&[I5W3T%1T26TOT-;(%^X"E.U<0+3+:LL5[)[V)%I> M[KD8:PMJ;MF<95FNPS-24-9V,).GGW**O%>KI((:):K.H M;0*"P]$O0IM:G*@"W,L=;/D%I\X!3G>I\(F(E'##U3DA Y3UDD4. X8(P@!/ MZ!K^(*"[;I(*RV5SUCT> )Q3D4Y[L7YZLEGCY6DK5F.UU?:G$:2;;^_7U'A MB9EG3TBH-C9[7D<@A&S[WOA!)D8AJ%U5T+5KFU[][,[,6-B%9"*H@ M)V8\ FK)Y>8Y=\N;01BT>:ZBB,UCZB+."! ()!'GTZKPE&H231MN[T2O??TS_ M[[K^AW-5]:/QOQ$-,,&Y5CNIF$\5762*TEF(&=5O4'7ZSR@([?%C5H06EJSE M.9[_\6^J.E3+:O9)B<0G)S3K+Z!ZWM_K: HMM)8_[[VCK^C:R+[[Y5_P3_)@ MAQ(?5_=DX:D&MD)@EJK^?7MXO/;H:MV,P2E9L%4STVKV[W]E&Y_"S6DR0.ST M[4RO)ORP:YWASRT]'?J4_#@E8WCQ1^+'>M4([GV9;@N/YN!G*YKH M/+' 8#0L"S?-8L*G[[GPI\5V^ 8-=]1DYC>03?8:V[7LF4.#/K3DW/&L'X)1 MA@/U^JO6^+_NK*Q^=WZ_JC\&?W[[XP>\D@+WS."EH1_1K4U.5K#8PJ*2\@+C%@L$3/I$C2'DS_WS^^\>8V1-V,J">Z/@1>L:MG'+3;M M2;%>;-RE[8+2 3J%DLJ $FM+RF^S$0FI\AXE5U<_-7J_L;^T3Q\47=4JIYIQ M HK7"G2P0VB !<__1DD0^4SB&"" 3F.'RI47!+BCR%72][=9[(J))CSTS/X% MDU/8HJ-(JP]",.YVUDCYC+ Q18:Z),R0_X(8B&.+:(%PIW M,K'\%]RNE!E^#.E8O$4.:U%)Z4_L('UDYE5XJ]A-IM 'W!T%S9J[.1FF9JMY ME8S3U!M11[2-S&:.S5LR3OHM8D[0XC_AH:P(SMQ3<1BF?!1A'$"PIQXH@?_! MMX.F> +W*_?4P>-'0L,]?!#K*%6PH:*!/OJ2 M?/8Z!;H(N(4MH2 ^4Y2 ^28E_?? E& CX]AC!OAXMWC'"@=G]EX?.'&$0-]^(Y+ 0D\EY$*?@RBV0S&@'V&IU+0 MA4,^3CAWU*4^<9S'M)70$>A9Y+!=:, S, <^PH1WZ]KQPEP2 Q@=#S#%?50( MKE]\S)QH$+8A[BMQ(^(_*MJ)@JBL1 %V%D<$AM4>VQ0;#S(4;Z=#$? ]8DWX M*^P$M=C#28P4]_!TW,>/8^^CD C9%4UBMGSU4\!&V'/L$5LCJ4@%<1D'Z$GF MW)8=L>9P[C59C'SW2VL\IKS#L'1ACFRV'R&I6_ (HDK9)6RL5@/E\) V6U7N8:5AP4WF-2=,-EX$LD#Y=Q#0(\AZK+1.T\@2DS"RMMB!G@' MV/_N WO=J5K=A/H]>LL0OTMQH>(3W_>]&6@X>DW]\!')VL<.H(2B://+V'J. M[[RP \OA6(5<(( 9&J%$K$58]C>Y*1 WC9*;8CSCKQ@^BL_8DO0BMH(#&'-8 MJ!:F0ZYX)(*(&S#\1^QE3[Z-' "11\RFQ*W'HV1U3FPZ5I)0AG(!QCZK!?@- M.,E/Z:%S\2T9>X9:KN5$^)Q[&V (0JX@K>%)MC/T#5NUG\'^/(Q !8P&&)6 M9GR($W@IG&>&A*$,50#;!8[&JG7\BPVH"QV*0(1P1W7(\8MP[L-6L[LXQ .Y MD/C>B7>?7A(%@BP7.Q#,]2"!L/E^($(C(08,1^-)@!%E[,%P%YJ 7A2TM?B; M/>@RZ*DHIO 6+_*M&,%Q.&!44D1!PB>NBSV MD6I=:/?C=[AL,B]AV=>LN2'K&-;D62.6K%3H+*,EL%JA/R.M.Q&QMW&:O9J) MW]J6[H%- ;(%X]5B^NJR@1SV'A[+YI]?1C_(33>8>%>1KGO_?B,#^44JPY-* MF6Z4E+1S0AO?LI[UHM9FI50()A8)76QB$O7FM#9-*&YLL^(3\,F&JQI\"7$E M@]FXL%"9)?=$T#9\ MEU4SDM:#1N%9W-&?[9U0)^8M.*:&H9X\ R3PXVO2GK)UR@&-/_G>BYR1,B&H M2*>&1+RP738TF^V'E0N>,($?4+-*RD-5'6C$T@=FF9)!3:VJ ]W0RG6B&U0C MZCON].-WM/NM;_7FE\;UYU:O?=VXOKAH]QJ?NZW6M]9UO_>]W?_2:#8[OUV+ MFX0F)AS"S'N+SF"'S +Z,?XC=>N^VY38@2+(LCO61;K*YMM&*F,/8>8;]/P^ M8XGBR"GU4K(H%R)ZN6RSF&BE?:W 5"MSY(.R M[I);IG^?B-XQ'3]"Z6+160R9/, ,<^?!&,P*ZHL>QK^GRKSXG4\Y1A_@(GC; M2>PXNV>3Y#PRKQJZ*W&V;XG/7IJ,0>I'!'MIKHUQ).4_B072),\]D G&,G%A0 D';(NB:3*,7<\'5 !9XO'V M6!.;W@F'H.TK'HM/0W=%2#H% )XQIS/L780Q! M!7#6HGJN+)7=S.T"JDX KA/?%R14*[^G'U*"U\JC[%>K&?.#"+.S)J(8 M\S^Y0@&-NJ,^Y^.,]ZNDG!-DZ6CFN9R08ME#A> -^15G#&,$/):';S[YB>:? MK-0TGS$5]_"P;/ \%.K)BM7MT#OJ'.$2>]I&1O4 @SC".E(ZF-R21M636/9A MFDES"@1S;&4]7:<;7%W+8;T5(_PM67>)7"_YYE\P"]L>@9Q,Q.9("=,,:ZR9 MWQK7C<_,I2J&M*=T6S>=;A_]J>WK?JM[W;A2A"=%Z?S>ZBJIUY1?V;[^?.2# M&,=M,NS+X#B880*;R#+#7#B 43N8L.@KTX!L%]/MV.<1&$H8H;%C^14PS5/D M4K9(0LZE5-0W7,)VOXI]TRM3TY@<8&-1WS-JN'! MES!>A:^(GRA&J^)9?"8?Q,#/(A\44J=8_;7#-+Y'NJQ+8-QO.,Y%2+.+-#/.H&]N(W"T8Q+ZS M['H>4;C/8?XNM#QQ':%;C]B8G0+6O,.2G=%%F*EFQ+.[[" VL1/M.2[,,\Z" M4"JJ2Y$ *;A'+[A/40R3UWG!\VGBY$:K+?9I\)+?+('J6?SRADQR(HB.,)&%-\S!16%.WY6-)%$0$R^_1^2++H%#D_8?7$) MXJ\Y6H8KHHQR%>9U%::*'JPLS(EB"\M/XQ$AM>+%%KFQC++E\U=D;&-M@P[7&\]PLP M+[NIB)U<)3QD(WKK4RI.MYJ!L9&@(G=4"U7=FXOMXHNQZYB+!Z\\-E_:DALB MPQ8L>Y^.5KN55RW+Y\L?]Z;&.<_<<6R(K5=H3^/F/VXWVH%H"/?R9M@LBMMF M^39;]0J IJ%,.&ICN_Y/Y3WNJH9'UB2^[[F=TX,!;@Q M1Z'Z_*W.^X ^%@A Q(G\=?*PWFN_6LY6^^>?+\.XM6]/7OJ"3ODKO<[-E *D MECU?)_29[62L)#BTN/G$^9'K#3.RH8Y M) CCK5F@$O@A%7S/]+U8VT.#3'@WF4; 34"Q$!]!1_J!6FCH+=_P2@S(E;90 MM"2=BDS2D4DZ/YFD$Z>AY,J3LF3D#C_7?4&GW$7!)- M'9:UAN\W>#V&2X?<\IUWU\3W!Z,_//6/KT[44XDY-2^&X]ZW[^[],_+B>3A_ M88?34SJU6ALF!FVV%X^ M->R._8MHWY^ZX>(XF#?=6?#U83#\\7CSH(\UO=?TAALE-,6;E:,AMSJM2//) MQ6)8*0/E*&S\NQL&([5RI_\Z<(;?:S2ZY;NS%N=VFVKBG.;!"&0NNX=]L\'. MRLKER[9XZ92,C*H%0US6R< D6G50JU7H8%BNEM5Q95@I#\B??T9%D.K_?E(J7?S#J]F_HCIR2U)R00KR0PK8HJ5K[]UV[V+=A.AKZ?T MOS3ZRDVW]7OKNJ^TKWLW+?Z#W.^Y=K]GR).Q+1R--W(CS9MKVT<.M:R-=&(9 M@Z%.K8&ICLN#H3FL#ZQA1:-4K8Q&M>H<K^5N__7NKG>="3T MKH1>,-P+!KUBHD^49*J5>*[9CELVV]U&OZ5\QKQ13!K=T>[Z0NZ];:_:.1BG M]H-,3[FO$[-*15 3@Q)I7D6I [;7:L[M!+UA+^C%+T@V M@Z;IIA-0Z_#QZ0TS+X#7:LJITG+2T'W21_&,N%(C5D?R9QX/=[$2;6.,3K.R MFWS8YK+#=UG>ZM#$K)7D_G9X;B\3JC3P*81J8<[7S_7R\^*YG1NY[)D!8_8? MZ,%/S_[.S<@#$P(28853*PENL]SL%=^G$0O,+//#E?CS;%'9# OP?1)Q3\+J MRWGE<%F#M32Y6.+)EENV&?CP9CC M9#-\5BA[8LJURGOR(9[>N6WQ.'_W/DXI/FL&8@L2);(LV)'F+%U#)"*G046^ MHR XP5WW0^K8]$XD=F8B@YGZC JO=I!4S$L#^M@]L>2<.?[=-.]TBQJ.D\\#MQT0C>;AB/MT?JSQC4 M3O+_%P9,@O'K6O:=[Q]SV:3&]4;BU,BT!#ZK$2_@D"78!MF$-!0$EL]P3T 0 M><8VRZ?(7'KK YYQV5FA&LXE?)_$^5/W=!B ;I%4OL7OAO'B&Y%'W%N%Y43B M5<$*%L;O3AJ?-BQ761#"WU2OUNIFU;0&E5'%&)A4HX/Z<*P.QKI54>M6F9;K MYI*G6M,2"[K9^7;3NNZQ<,W T,R:7I7^DM7^$JU8_I+429*=8^D/V:*-DFY0 MQ41LZ@:BTC+;$L;1:/Z75[%=BGO-S#/SPV+;@K2J;M;-D34^!N'?;_?_M?+]N=7M?VC>=RV:KVV^TK\];UZW+ M=K,M@6TUL.G% K9XHI5DII7.I2+F6HDGNW$E?F>NX;3J '[<6*=5Z;:N&OW6 MA=+K=YJ_?NE<7;2Z\(Q^'YXGXW=;P\^ U_P#D_S>!35N8L_8IA:A* ZI2T&_ M8_O[V>^+59Q>A::]^-V=[+N;XMWGZ;L[Z;N_S6\Q[ I[9LY5_8T5M&QK5*EE600S! M08P\,-4#J FCT(),^MV&3 -:HX(8Q5)!8F5C;J:9HA$K#CC9O0;/^#D1U>1Y M_'JS\M&^OFB!P7;1DO'K+>L;Z-AA>UV(%49L@XO#O?9 _\&\W88*&%8IX"3] M,YI&\+3AIIPJ_6P]A^_8V%BEN.&1@@/2(@2R6N:HHHYH;5 SJ^6!6;>L0;UL M KQ6]7&U7%$IC-TRLIHWW?9ULWW3N$I/7+ALM1!<>ZWN[^UFJR>1=36RFL5" MUF2BLV=KX%0S#(TG6Z+BLU!Q$?_2TFG9(V6I*.L58"DV2Q2/WT)0QE2Z)&21 MR&R)BQ[-Q&G:"4JF6K:E7' ]VH M5 :F2H>#^JA6&PQ!2ZT1;:2/56,YI?3W0;6B:97X.*-<993^GN.$TG+KCR_M M\W:_EU2=[/5!HV-G /6:7UH7OUU)JEE-->5B44T\T2>9 J/)7"MBKB77/-$R MK91)$4BH89N'UA=D(/CQ?YF3Z;[C!GSXJJ13\H]G1*1S:O>#K# M.HU)FE@/WD#"Y$ IGC1( G:B0W*"YZ;#2O,T_+%[EU9-PZ@,!Z"6U ?F")-F M5+TZT RK:HQJ9GVD57.C-S<[U[W.5?N"N16_P[]=I=D!7NE?E':F1J<78B1A M7[+^XJ%#1^H?2K^CQ*H>4.P5CB(>Y8G"F>\!?$$M4MX&?+8(\6"PP^)!DE@M M9C&E4[6DUJNU:K6\$&Q24]M"1)J6@WFA'[=&O$7C/0TGJR9!1&TR$X@O6BH= MZL7F3;U4K?P].X8+5D,FJI-Y/69WCAWO/A[)^/,I&DX?>>3N'L9N8\0L^9T, M08^+0OHIMB/F!R$36 1#8+*MWNLEM7R\O:_52EJUB-UG]B#[WQ;7@%CK<:'N M$L90F6VAQ,'J]0.5@W-IKB/V2';3>:[<;+MO8@GD:NY?S+A"O50N M:&#Y]@R7U+P/:OA.133YS5\(PSOI^7%$QJCI!568I;_ M+:(,@:TG7G,:4.L4KL:@_T?* 6JN@O\__HJ\\-/&%O#+/KT364R3,)P%'\_. M[N_O2_"&TJUW=];PK0F>-WE&1[?$/QN1D)S5]9IAJF> W%JY7#.JJJZK:MW4 M]3/KWO).=?Q..$AH)Y2C2\J1E),+ "D^Y9@E[9__E#*S]3R773%, MS ^&!O\%?C!'.[)*WOV2<1JQ"F!\AY9-EW=Y%'-I2#Q]V[51?/#4U))68,]1 M'B5D4\NO;(NZ 54:>*8:2Q;BBN37R'E4-.U$T>IU51G2\)Y25VF21WAIHGKR M(RNO\&PZH<5BV@2O.,-KAX@*)_RV=N# -<&"7KHBY"D5"Z]Y873V@8NDJ'R"Y;?FG[0:@TDEI*@&OK +>' M!PTS]-)J;X&Z)0F[$G:+MX)6PFZ\ :%HI1EJLC2#+,VP4E8WEV:0V9"%2(B3 MV9 R&U)F0\IL2)D->9#9D,R&-J0%L,.6]RBH+J/G&=&7=.A'Q']4-)/9HIJT MH?.V@J0-O?>6%T]H&.R:4FB..Y=+K9=5S315754-M5X_NZV6-;U*'S3UU"R% M#^$N@O3]B>TOD!%)Z @^W/C>* (:N/&XPB*M MBQ5TVU9,+5;(8#F93S(3;@YE)Y0]ZT@659/Y8!*$)'.M9:ZR%!K)7,AY*[6L&.(;>R6O\C;)2R8S2QR2Y+6> MO"I2:(Z;O#1@+ETU-4#]NEJNG-UI=4TW*P,TO':5&_TL[Q_+6=151'4MS9YY M%@.A!_!)%^$+*>I)@DKWU/ 6&[S%DH6LM#52DTDH>0A^!_IEHIG]T9 M6LVHFXR'3G>V2^>GS"8?-I%; M45\CERH&YUII04D0DLRUGKEJ4F@D*J1HSWW8474#^OFFJ5-]B3.H%#%9\2/JI,WD+A5IOV<.\@-G/=K%X M\LJ+5*@%Y]!""EGA&#-G ;)KX$5&,Y6I 2J9JZ&H]EZ1$7)8*+U(-R_OF)5A#VS2C M)(E)U)$&U!.,)>L_2*YB7%51:S6]K %7&89:K21>/R-7="6V'9?S0E;&-LFJ M+,E*PHXDJ_5D):MF2++B9*5IU6JY!F1EEJNFGD?#BJ=TB SYRILRU::4PW7G M(RV4M.J&BUFO7];K MW\(BD?7ZWU*_><;4'V:]?J.DR0.9I:.!.1I,535JY=K9;:VFU6N\_J96VY6G MH36=.=XC\RZ@=H>CLNAF*"]4U[ST*0"*;?U0OEE]3D2[)2)(1(Z.JJM8J]?+9+7Q1J7,RTGK*[CI>^D-Z4E?L^TBT[(Z;YED'HDADGG6,H\AF>?(F4>D JEU MU:S6-./L#L96K5=VG JT>(3.F:<,+MBGR>8)IX6Y\XGZV6$,T%N;,![TG@TO M M^"7QOCUU4D"\YU#GC9-<(W%#N:;NC MF[4AGX1MS 6VZ9+IGY2&RE?J^X]#8!MHXM8YYRG2>6' 1U*1!!5)1>NI2 9\ MCIV*XAUX556KU2KZV9U9,8Q:E;O==A;QN;3]()P__3/#3LUY=OK&RNGKS.6F M57?*3?JS["&^59 7?WY^X*?XD")Y:.\M+Y[0,!XJ9/CG&$IGYY"PRN6:406[ M"2PHHV:>6?>6=ZKCY[I:?T#:&NW(@DKWV'S\VYC]!T:LQP\D^\D(DJYOD M[=?+1)$,WKJC,*=DT?]#0*ZC*OHOS\'>9>NIV]Y\80&T+):1&NCN#*30R,B#L# ?\J&4V\Z473 M*09;>A/B4^6S3P"V;QQX*88Y+FR?6J'W7)K(NJK,GR0*/2&*1P7=5^LKS@I M%5328;ND.9>\F#TJV]QWJ1V%WTBRQ]Y;7CRA@;56E^PAV2/./JZ9FGEVJU7, M^JZSCUFB5^NOR X?E;:+!3J@P:O8X^W*TZ8!!UZC5N9O21"0Q+&^@KI:1.8X MAN!3_B@F#INCSTLW];-P.L2HN:EJFOY '\S1SLX%6;!2?HIJS)*QAFDVN+=Z MI[7%'&>V:45?<[ 4NKCT:L6L&8="-C*Z?0@ RQ+[(K7\3XR MVEZ\?T?=HNM0EZY#B7+2 ES+C/*8DB-GQB<"3^6='5-R14E ETXEX2X\;9$$ MOW@A=1CI??:<,=I_I:WOTREO]4 2R4$23^2!)!L.)*FI\D 2>2#)2EF5!Y*\ M$/#S>B:%/)#D];V7!Y+( TFVL$CD@21OJ=\\8^H/\T 2S2AI&#O0S>): LO_ M%M$VR*&O(:X5 A114:OELSL=_JJJ.R[1RRQXT$53SSO;*$$#&$PWXSP0#OIT M,P-8\F6%3#WW5ES!CD*E]]0'8P-46^Y?@'5\LO$ U16_OS\G$S(EP0=E]:'> M+RJVN,)GD6[+OJ1#GX6N>841[42Z)/()1$6$G<-PBQLEO>@L5D3A*1IG[:R^ MU14-D2.0M2R+SD*"Z#^?AZ3SF+&FO*?C,;581E3\&_=#:]J'Q)?^-(&]9=TK M24V2FO+1\N()#:HA2ANC0&YJL"<^30( MX"=1C60# [V480S),))A\M;RX@D-,HR)+CPI.Y)@8H(Q5:VB:]6S.Z.J5LJF M(!C]86W.%S34!B;))S4^[2E\,VHL,LA(S7OO+2^>T'!F,J742&9ZBIG,'3-3D$M2 M,B4I25+*/;PA7=FM5(W*SM.1+^)AHYMG=[X]AT0 MA7(#J.]2/YC8L\43*QO1+0RMHK-28UI%)*$C>P7(7%TO(+X-G()4=E-J)W1V MP@B#53%+:\?$O $_KVGQ%Q MR4^<^8R?AW0=B::GJ2$/LHL7C]P4(\PIO'*X62'2ORG]FT625US<13R=[!BD M,(_,KIJ5* Z=U51G[WI2Q87PX MC_*9 O=TA=\#*8+ _.-ONFE\X5*G-#CWWO+B"0VNHFH!94;RUU[X*SV94[Y/X(3=GY=7,[T)"[YU@[0U0J_1@&^"3FR2T&\ JIT@JD7V(&"3:-!H+S' MFI\?3I1T$QQAOEKFH%7C4ZB!\_ U\6ZX?K(?H1&%$\_'(RQB+IYK >^R1>$; M,-&Q!6RO K\HV;F]HVJK[W[9,J'S S;8!=?>G:C"9\9C=JBT+BWB0\#RX[*( M:U(*L[S0)D/B M_E#^0::S3TK?1]=N2M++&]B?QYA/&,!I>_5$QSB"$*RDSD, K>.BSKJ4PEQ* M82&I;3592YYR'>05A,C?SL\@0&.\I5GT!6^J2+25;'C9.O8HMBUJ;79.U MV65M]I6R*FNSOY!K\EJ>6]9F?WWO96UV69M]"XM$UF9_2_WF&5-_F+79=56: M%+DT*?+K^C#P;T-+7!^&JJGF_J,&O="S?B@W\A!7/:6AZX-D2Z_HI[M M;Z5>2?D":Q[F/#A)CY+C6>V.0_U@Z\Z/N'$\&_ XMFI)S\RU$RS7LZ0967'27OO?ED^3OQ1T;2%$/I-J]M,7/WS1=^O;+!YPD?E M_94=6I.Q39T1;DS[(2[G,016L/<#NW=+D72>>3:_P?DOH$E\)]_CS%+H#562 MIB3-0L'5<9%F$8\3/P8IS#5IJC4S:V%65'W'I-FC_IUMT84,=J2B7XE#J..Q M9/;[Y5SV2V(Q6<%O8?!/E//(=D8G(BD>'N@B ]MN"/_##/4_J14J'3*)3I0O M\#S;GML?)JS5F*63=[-76IYR==5D'(W9ZN<>\4=(H7-GE<4YZ]@D?H1+Y/)4 M]B^>ZSF1D[YXRPEPK <5R7/8 <2I+$E M-V^6-5FVVYHCRWBD*TYUVRU]/M,I+.E3TF?Q@.NXZ+.(I2R/00IS39_5>KV> MTJ>F[=ZX?3I6FFSTU6/V&49A9O=TQPH]EE8^%TM]TH/LCHC2)5/*2;2+MX?* M]Y+X;LN&9]+^JF1/R9Z%PJTC8L_Z/_\IA3"70OC6Y)E2'_P7J:^^*^)KNX$] M F+H^V04%Z2\L /+\8+(9QGOUYY[*BI2MMTQWLK]'BH M0M=*6B')HKA%UG;. ;JV0_,G&@(-V,2W>V]Y\81&-R3@'CS@&KL#7(S!B/J WXAO15/EZNI&.5T7F\&HS(&HVA)^ M]][RX@F-(?7=@X=?8X?Z;A,'?PS#SUP9XH2.YL2F8Z7U0*V(._7'< 4 \"SR M@PC+L>+9(>CPAUL,58_UY![QA\2EP6GGP:&/2L-BJ*ZKJBX1NW -S\GB.PC$ MUB5B'SQB[RR_Z0G$YN3AJ>I6JE] MW2LD,117E_CCO'NEM-T@)+@=YL*S(H:$N\M+Y[0(%SVFE\D7.X>+C>#8Y\\>*XW?51: M#R$HFJAF]JP)G1*)5H5J>$ZD[C#0JMFXDFA5$+1J$L>*'&X@7]GNCR$)J,2N M0C4\)S)X&-AUT;J4V%40[+J@8]MEA](D]JR$KD(U/"!C0==4XE]!5$.BZ M(D/J2(4K-]*W_&\1Y7$ECA7U7%!=G@LJSP5=*:L;S@7-C)"FE4,\^'8]ER9"H) H]!1541>UO>V(WYS)566&'I-(VX6E -89 M_VI.(O^Y[.=INR/<& )O)@J\%62,9;>AO8>BHW@^_"VRB#W_49DYQ"UM<1'- MNPK,DK[4C_C+^9Z(KERR2M43ZE.4V6TV; 'R:[INKG"3W7@^BD=<_PZ6E5!; M F5"[G"Q45?QIG:(I9FR6VN(XM._(AKP [%@N,LB?;H?]X-JOI8TZIE?6"4J^.!637I@!AZ;3"J5=2Q MIHZ'JJZ]XV_E=_3:GZ\;_=^ZK=Z@4E&KFBI^W;\QE;8LL:%R@BN[T<5N,M"+ M:@V"K^TSKF/8+78T]QI%;D@[1 RUH/UH2XH)")C8Y: MW3!/Q)/C"JC ($RBIQ'A2E<(_C9#N#W&7 &MF-(%3S:$'X G1H98T@GQ!G' M&S0!FZC/+V!/]FGDPEWL@:!93#P?>C_*%4=LR\N\/6_R9M/,K)>JQ?.6/L_L M-$J'VC.S4JJ:1>S;2YQ6&T7S333=)><&+%Q<':SSP.3$'=S.9%UCV_B.KB#_A$ZOS PO- M/)G&^7!S/-.+D;HIT(7!?-C"4S&D8"W%'HHQ6/3>/1X -J-^P+S@;NS$$"_+ M>$/PD# 15++(C%B\"?BMQ[\=L3"$+0(2TK/Q1,/+IO./K)9*]?@"0]F%$_31O?*=FR;.5_"4T*O:<]NW0D?.Y M@$[%GE(T<5[JFGZ1'KA/W\#+]+GFH4_K5[EI9F'&2NI($A:,55[G\ MY?*7IM+K3:5+GT*[;.N'L)R$^O#-ZI/;6^*'1ZY=Y]1#'7"I81T6@/K@MS9HWGEHD<"EX;'KGSGU+1: M4$M^!Z5DP6@2.2YD.ONT9'XEA_3.*35'/M/2S,K5=.Q#6=HV"A9@F/=N8"U@ M4>+]:5B6%[DA-$9:7E+U*B"8'+BE("TON?REY?5ZR^O*=D=$.:?VR('F7>!6 M0:WZJ7$;V0XY=I4\I\97'-;WE<^[;\5::EO"VGD>A<_2!"&GUY'EVI-63J^G8AWZS9> JP"A+ ME4>J/!(1CE9)H$JUKROW\5FD-K2-P?QUX>0)H\>9X=:?+D M:CKVH>!L&[D*,,Q2Z9%*CX2$HQ57N?SE\I$L8*,.92'9+JD,2'HQ57N?SE\I?6 MT!9V^U#/38I$?XWW&'L_/% DCES)EB90GF='FD"YFHZ];/;9.G858*"EXB,5 M'PD*1RNN.8D<Y?E#@753=%E->EPS,ZUF__[7W#'H MQ/IQZWN1.SJU/,?S/\;:8J970G?6$PDX=>@XA*:4C$3(3WU^1/O<=Z$WXX,P M([?TE!_.3L;0WH_DSK-'8FRJ]9(1L^U'%4=)-';HC1[A_R;AU/GE_P%02P,$ M% @ DH9[6"[9-_N@F0 <\L !@ !C=V-O+3(P,C,Q,C,Q>#$P:S P M,RYJ<&?LNP=44]VZ+KP0!!20(D5 004!I:DT12 HTL6 "*$C(M($I$FH47I' M0$! BA0!*1$(14HB'91>I88$!.D)-4!(;KYS[]GG;+\]SN?][QG_?^Y_]B)S MC&1FSK7>YYW/VV8FY._D68!%2TU3#: Z!@!4E#^ / FH -3'COWQHEPTE-=Q M^N/':6B.GZ2CHZ5G/,G(R'"2@8'I%!L+TRG64PP,+)PLK*?9.3@X&)FYSG"R MGV%CYV#_XR94U)0Y-,=/'#]^@IV)@8G]?_LB?P%8Z:E6J+6HJ2X"QUBIJ%FI MR*T /T7.XU3_<@'_ZZ(Z1I&1EH[^Q$D&RH J%N 8%37U,1KJ/Z2F?.M/^1Z@ M83W.=N':;=K3>E9T%UW9K[^*?T\O<*>\B>/! $Y0ZK%;X(F3G%QGN'DN"0F+ M7+XB+2,K=^.FO,I=535U#4TM_8<&AA C8Q/K)S9/;>WL'=P]/%]X0;U]@H)# M0L/"(R(3$M\D):>\34W+R7["9$ YCA^& MJA:F9(!) ,ZH($>4MZAPT'[M'$$>_X39*!?H --<";>)@.= MTE3+#R')9*!%@P FO>)3HKSSPC*3;N>2>-2;8=OT^#T2+XH%MLD$^"1Q_$#A M!I5.DX%L]3@4;IH01 9>V_U3S/]28GIC^N*4V/'J$6+2O- &3:LBR_TL&QW' M9I^RU+-M+/4?OWDZ\7">S%N;?D?]RB),^3B[WG_)QB\=,*"7'A<^8))J&RKZ M#7;*N-=I 6K^/J6U.OYK>G\H5?SX?7I,C(\74:KF)44QW!1]!15OD!0M; ]O MP[KTAY!(3C(P_.$K,BF;69:BRQ559V MSJ?6+^E* >^.7^^L_FN'D07_T:> T]"LCG("Z#Y>JZ=$YW+@]$2O!^+S&\]8 MT>3;[#%C(8^A2DFKPQ[@;,5S=9E.9(!Q;19T0&L)FUVFT"A.[]<.2-Z ,M]O M#'MO,:-:,-[G>>M9(/V$,2\-YN&3=\Q69L(M&W%*3(1&CQAW./ M!PT_98K,?-?\L2[QDUUV8U90SN]Q&F0 1B%TXN';]&KX :D,NO_FAT2G0Z)ZI2 AY[R?5/S="5(6.&C)[ M,J5]_=20]TTT..;YRTSCEWVW9V*KF7H=__*F9>E&E#O9\8GU^\GYO^AWF,!^ M'64]8U:"?!#JVL"4_=(]\+9B<> 0RA$4,H$*)AI@M259TS,$6N13=M4*Q%ZX M)\?^[+Q(7U3ID>H&B- KQC! ;(X<77HFAT'PE749,H#):*!8HO*W#>(Y2QA^ M&?3+YVW/1U]Y7]/W"7#H:XT^DYE\6CL$OX"L,>81$*\/TUU^_BU^BH\)> [# M]I6")LA3%#$W_,OGD7QY5C NQX'7 MDM[;I:E/O!\,3;>&5E?.]#POEG[MV+F.="Q_\(U=>:ZL:JKL_Q4;U19D[3@9N 2^?T"@6/^#]"L'ADB'HVS4?-$2 MVI(!MJQO8ZG53V6VT>IT:JL5">#Y$@MT=GT/UY1\H9=Z9>O5[F1UCZFJWLLI MX.(:+NQJ*Y((ZZ LN=+5)=DZNA9X2")1#,^T%RTM=;QJK;$W]G'58*;,E;'' MF&&U%H68:*-UN'!_28,NFAVQVC;72EA6>+A69-8]!OL>IGJHC4L%V6[Z9=0K M[^]!?K9QP&^Y[\;Y3I/X0]/V3+AKR]1U*$Z1F03SN4><(WCA]EI]& , _-Q.>!6>*R-RAG[CSYRSSMJCEUBD;[ #*PM.VZK18;D_-ATW- , M<""55*]/KF\0:@XFYP.>^W%\PE,34"W4VD$=> +.R)(YP@4KX/%,2&B\.9S8 M-\VY]>+9IJ]GF2\F-@HO=0]W*M$>$Z7HU@&)FCWJ?C$@Z';WPE>ADE]R(#+RAPW!WPO;1TDA M>*3K_47;W*&RDJO\+'9IGLW+VA=)FP;UUR+FO?.^,+W6Z&4//@M9WF&?*JM> M(@,U-P-\K*F("UJ8)L]/A4)"1&4W$; C*F,6'9LWUJ& C\(WOJA-, M\N=^HK_G+ N<4$;5?J?%>C%A*BT+$?K!^S;<+[R(^H?;(SOUZZ+V+I<(0L@U M#W.QN%0RX!SNV<=,O-Y/],?X7Y\SQ',%RP@V! Z.<.?'"\:\]Z3R!JU0"4P@ M?7!D8'4-RQR*9E=B(BK5#-K6XM#AXM*EUJTUD2&Y7!,!^_-;I^2[! HL DR. MSN5\>->87K>>-84@>NYHN)NMI'3!&S?VX:G[@T*->,LUZ]SE.MLP/TM,ZA.\ MS'H$5J1L87@A$-NSMF"4U>U-0Q_[\'J)QHL? :ZQ?NKF./6H!B8<3+._031O M>9>'*27"4X.H?ZJD;NB.[:GCB;"TNH2GD6-R JOBZTJ-#8E@/7JZVJ'A%'EH?9L MR]3/$KF/:6GH9U0\RFB8MU5"']YK\L(P1_*?( E.V?O$?L9(,BB]/U5D_\&D M:GBT'P4PGV_7P-MJ:YGHJ4SF9+KLN%$NH\6C3^3[W%0'' B($7I M*B%E[K O$G6B004.5?D2'*I\YKU&2I7186>-@^9;D6BKV3 ,7ECDH0*2A M8MAY.X._M7UA!_&-VT4P5LKIXOHFUM#ZVZF1'_P(R4@%ID,50MCL1LS:=AR7 M.<%7!7^S8CC#8UKMJUU0<[LL*U &Z3Z10GVF4Y@;WF"73_=UR/_<&(:DJKDE M"O/LV$#MD^A^C,4@3*=5.D995R9_IBWTFO.HZ+:7<^><"4GF-:D\CHYO?\B]OEG2]#W ML=NJ-^KU'QXZ$E1A:RC?$[Z#;J0:EYVA+B.1G,AX?AEH.@F<>X<,?.)+)P,Y M1!5+K;'_JZ+#9LH:&+LFT QC7;,=WA'EO/#YC%;3 .*771$?%Q M) (EZ'00Y0J:-_8/$\D ]?8&22N7Q#N$\2(>=9&!5P=>E'@$Z2<#3X)(4$HP M\3OYSXG_61-A<\5&ZNW@4.JN.+I#?9 (&E5J)_=:L7YIM-J>P6+BVRUI%D>PZ+-0R 6@[J7S#6X_R+@,CVD; MK[/& +A0]XH60/$4_]>U+9=SL"X;@A49< 4?"9MLI_VIX_]S$?\;019M(9W] MR7>-$(%)'BL+$(46W$N8TT5%/%L50\ NLD=NVL5#NC]Y?3$:2WX,5ABKA:0' M]/%O:HO#5H4_DH&E]H67S 0#B\N4 -4U!R8>HSB7?7-UXA4X.QD8>((O(%'9 MP8AE<,V!MHT5[,G 2Q-^,B!:/&CW M+]LK(0;8K .Q3&DR\$6(?X@XTDF@:^&3 MQAOL15^H)S1A?XZIC\X//;KZW2X;X4C#=FQ_J-?T>HT ->"ZLKZS@*8#S4OB MI4CM7:CMA,%_+O-_31$S_.QQ?:WQ?B8$5P8_8[S?H/91?H57Y4!02Y2GL!T/ M5#\S[+G2=_CM?X $ND+2EFQA/HR$+^:7Z'E_HKJ7[78T!Q=5#YI M>'0-,=YPR,2^%JM\&#D'/N/RYM&[.(>5/U.0A[3W$K;ZK)ST /+/Y?TO*B*T M)DHZCI-XJP%7=4#4P0O5,XTV6A=,&3DD^^B&&GUX+1!H51'3U#1;'.LXX=B# MO$$&.L*"*(LZB-J&PC6SCT6*_'UKD)P#=_2Q^BD00O((D)89[JJQ]2KZBW;6 M"=Z&]D]=7QRRLLF>,5K]X-8:V]PXB+0G4&I+X0Q<_=%/T/8D]@J02.*"M\,. M!/GW>5Q(1(NA(:I3),0-D@&%L M#G3$QDR,D2,#O/"\PFSF=!C&AVA+04MQ//&44G7. ]:\0^@C W>#R(" #AEH M7UFZ,AMPP>_Q$)(?&J?Q1AVCV+F721^ 3''WIQ(!&C;W'%;-K,NWOK@I)G:R)K3%A! M:IS?T\;%%MA9!2ZL.+7VB*D98B#Q07WB_9JJ4>'84:]Z=9%=##?2GN--S$?P M?2D]>S2"N25&J\,2:,=D<40F_RLP[JU^S MLP=+.^R'66;M@VHW-_Y>*'Y<8X 4A6GGR4#G$ Q?M\/,2O3 U81*'F_L:9ER MKA\J&=26BWS4Y_/CT3/1]9,:A]V 0'Q]VO85L358R@^2'>1W])HGM8#^CQ][ MH!4)[$-,CHJ1YPF2ICBGFL@ 7O7<[X2XUC27L,>U"5BK".<"HTTIONM%"THG M@-7VVQ>1'^%O85(DYW\VO,L$W1P2CDML#:#I ME^8_U8$5-VUSM[CM1/UU>3([7.M.L%JOOO9%LVN M<7XE,O#KU'>XL%;+Z,S3]7C!)5Q1V?VJC\C"KQ8VFU&J[+YTG>ZDXIMS\"J? MO2"4/8B!4';KLHNXI^1)$[2]NFEE'?YDBPM3VVN#IV_EOS89&"3%'M72R=3, M2<:0F''*G[A\$'*)%A;CW_.161?!5V0&+M)Y,B6I-5VH8QV2T;E1#P)GK.W_ MU+(OLZFF.!W+386"_TA?C3!,05L?HY]1O\>1OO*P0.):=. YMRR\CD02O0J$J]4:KHTUX8>(R(/>Y9L%#-+7LZ%33\\_-W@U[P6W M/,I%S<\$B,"^EWZ$+0E691T*P[I*_'C)0+F4&AD8/&-''?B?1K [SZ_[Z-+U MH']1$>B7J9Y+F?2$%0P9")?O'O51S"Q6#.QR9?1!C\O9;RDP5=N'-Y+& 4L1NQB>ZMQ%^/YO/9KRSYO[I;L[_*U7T"1VS/:!F M3:Q&@W:> \_#T2VSB3[[(E/V>HU7U\]DY-%//G?S>F2=(&HB>8[@IN-V[O2A M[SWS%Z:N+^KT+=IV01^.1?*?(I+,J"-JI%GQ!! MM,7,XXBG_=/,C:N,CI>XK4_^0-3OAO;Q:O9"R](&UQD.[*I$$@_&[2B8=L+^RO=;B>Q4VVY_#W8N+^GL/\E2NAW6=W!!V[,@8-=/-/K M&;2IF=KJ6G9O9MY-X]X^U/Z>M7C7QBG%(5]CMFA^K C2 _H$(L:/HZ8H<7F' M>Z!XR>'?ZN/YN#!054MB;=Z_B2M;-5 EN:V'PI]CMV2&$5ZJ^0_YQ K3%AF!BP MH?FSO./.LV/21QP[2ZG91TW5X,:JK6^O>J<\:--G)2?4*=2+:V#&H#E4X1,_ M3;S"+]E)?Z_:GZO(7-"=O&<7._ZT\S!7*&1#%+YBB)(>Z_QC?]G$]*L\*"]%Q/$KZV%04 Y?R#E5$7]BGE:J'5WG\2HK=4CJL5XB?NK]0 MA@WVG(3.8]Z'#9\'DTE<]=41;Z[:6T,NJ9UQ'\ID>CP3T)_%5 KZ1(]'!GER MU@=X]"@YZJAQYV;.VEX+,Q0X'VVMJ'%.Y]:M[^E+L!74O#?L/^25KTY'FR7- MA+'I#'B.Z1BO=OB$D;/@\*S1#U57WNOESUC.A@AZ/*8SZ:LA3,]ZKTNP$W+5 M(@>E3N83T_+AXPO>7L_N6EVX%-L^^^K=65O:UWU"?VE.GPE5LX[BPCHC$@JV MF)_2/=I>WUUL1LX;.5<']ORXZ:<$"*X) SQ+)7"G'=$;$FO"DDAC !JG[11.[?!45+33UE_M^*;K]C5,+Z=0O;N6=3;[AWW?AH*C=>8*^5XE*_OB* MJ+^_:[%.[J0J4T^AU#>V1(&8(:;"6FIQ1,(WQ-F!QM(C1Y?N6V3 7'+_+"0F M@)*LXM_P*(!Q1:6PRBI3VD#]\ADK$74V*N4,Q>?SOY?TG3K*HD2?<[;8OEC2>2C8$C<5 M<':D08 O;>R:8(64<[UF'GW3@&MPI&RG(+_<61;'*<<%_I>@35_+*MNQYJR# M9PG(S.QC?RIQ#DR0VD?Y"NI%1(6C7#^Z.7H_YCG),TMU;DUB U#MVUEZB7:( MT4H\&@R0$]AT1P"UN+90>$@ M]1R*Q$(A8X<=]=*RZ (_P;F6 OBEGQ>%I13HA#5^W+0KA84 88,,!%/XB)\ M#GP:5.;"OIBBH]!L?AQ%,6H;VH/2Z3IW>*-*)?4SVWX5NP5+$TN.0&#=S0LV?"ARY@&:)D7P;L?14_+?"NNIFA3&WV!"T9 M(,J9P;:5E2CTQC!2/KV(^Q-8TT3[MIVC/W[*Z];6J8,EH20[YQ4N'5XDK*@, M;G]S+,ZX8BS^%%=9'U5PTUS>F&?NHQ>C[,%>FW^ZY54R\*M"?T4]]&:J+,L0 MW9.'NJL5&5,Z+EE[X!.Y'T;B+0,=G.<_1P9PH3#2+?5?IV% ?VI&$*R M$";Q-9"C'#\5G+5*/XG!S[0_78L0_][1JRXLO.&2>&D>YZ?N9G5O:MDI[Y<) MR@"M8#1D>OMOOX9">E (.6(&9+6>#%@Y49ZMI]UENM7[]K##[ M)!+W.TJ+:+LO(?GTH2#FTJ7^.3_%0P%H[V(3ZT\N;?ZP)Y8TT]#'R]X-ZIXE M^5,5DR5V WESG /%@9/67YJHSYY,6-FU(,1A)5E-5GB"> M92CH'-Y_A=&=4L%M-[9NV M.]NB,ZVF(*#CO_6W4Z]\GH?JL*X&HBZE&C)]2*F&-!U!N_?)0*(1@>)D'S^- M(0-Y5T?[.GID-XP)''A>\-#:4R2J'C>3?[RQ%/%4\VE\Z1.#NWH)W9H 59<0 M\BGAW*'IM)\[$%ZS&8)E,YK##//ZCF0=*Y1\L"T)6%U\75M:C6E-"2/I5][(_"2AH M3!GVEA_*$XIU*_'HL,%SG-H@=N\:%D+RPIVQNGOP@M)"%J'N'UKO;KAN5C*Z MZ_RULR\Z/)LA[A+OUP/.*MW8&B+&ZH&>P,_(!;,NIKW RY1.OTFNX21=V+P4 M;#J).*:1IVT0XU8&^09%BV@E9CHNN01EGAY18,)]:SDX5>7JZ%GT?3+\0_)7 MFM"+;AK-%S_&TG>=I+IY@_N/W=._$J38W:WQ(%7DDJ-'_^^YXLK?=L7EA]1D MH.M<^E$/,QG0R^!!)L/?@:S.2>H/DICOI95%%?^$\&[7!GPKM1_ZWE?'Q*!= MG;+G?K%<3_JTT*QL=?/#^"!+]7XJ57;=?VF6UV%-LJ#Y;K\39,!2OH.4 1== MJB/0[6H=O=]Q>9H]:?>JG#60D& M?5]O]ED@J/9V.'['2P V ?VHBIIHY&6_>\,-ZMD.R3Y/Y*S!%2^\WRI4W[(- M)0GQ@F *%;$9CF_'4$_B(KCXF9_B,I+:$\0DQ%S$1V_ ,R<[D^ ]K<_6 MRS>23CI9BKU^7Z'AL/%G/_ZKX=BW;>:E[!PY-^Q0E@'<C"AD=/1*7=5K/Y5.[#L\.KH#4E@>0QEUQBG M@MCTD\SYR5H"V1#:JT39SZ@7C/"3Q&1PD@&-4?%U":?5LJZ$99IJ.^X9*_JIKV>> M/6@0F4QK^FNJYONSK9&\V!,2G7906&]().HQ*AQY 9<9ATFH8_ANSPF9\ %? M6DVMUZPZ4V:0JH!*W'/XJ@:^L9BIJ(+-6NW#NO#XF8>U&L+&;=7!+ 28_C7P M9:9Y8V_D\\E/,6CY->[%X8>HWXBZ:O<5J@\ER, M]-;9QA^"I$''^9&X<_B4 M)A0/4?PSGM$=ZK;1%M;& PZ7[CP-KOB,K$8<&@RD,;Y][!8]3E43?#MZ_]UC MY'>":P_V"OJ62<[H^;C?BVGVC""K !1"^"B)DCR0 5$?2H[TZ"C0R?,#KJ.MQ\48 MAVS$L&(E(WB0GVT*"(GW?7DK'>5-$%4K ZIR$$<3S,)'E]MWWY5NGI)B^VV^'; M3K*#JMT?KFOUV%_M/*X!%+/846]H_7;N_3MQZ0JT9O<9(0S+S+9"NA[5RF/F MLT<4K*X;32KHHK+1*$5YL3]=W%#C$7I[/5A@+V8E+?'>4;J?I?,,NW>6CN&0 M9Q:K Q>5\QG2^L%E0Q:4L" W[?K;Q5+P7R8"6C,;PF#"B8!PKX;/=91DCPRD MW^AAWE7!+Z1BF6CWRZ1#M'E!3%_FS6ZQ[#*]L#W_;#[@2/9@Z]U#X5U=0JJ_ MIR?,US5?C='L70>1:[ M*28&__QD+Y_I68AX#5A\MV]C16%L=:/&U2(C2> M=)Z-P\P)O3#G4,;":E%Z*$44Q8.;CZ3,XUIKT,_D*EM'O[D^3_%RS5$[?=I< M3"^UCI'S@?*9KC+)OY*D,NJ'6;'CI4U3FA2I!=]I%,K]=\.'BE)F#M+JK[U" M-O4L,S%S;,UX!U= 2A>$%Q3/]XTSZX_Z.1W>)?7/*#;@0%%^IW.AT02H?3^A M7CWQ?FWZZJY;BP1'!2]C[GKY%YM>J3_5PTN1$C-I2C9%!_TA<1? M-[R3+B[DSV_4F':.WZAN*+JB32*SO+*Q(;R;74>"ZL9^'#O5BC0D'=;\$H<^ MHE5PH13ZO564(.[QYQZJ)6E(6LT72281P14E6 M M$ >&B7-@KAE+D4O6X+..KVRHBV)Z.HV!C4_O])#ALA#%B<@M%X(N'R\9R.Z@ MY+*XSZ.H?8FX/_6\5!3Z1P-?$ZEPW[E)W_$H$I?\&!FXU$^7KV=Q3CB(=*;% M-?NV<(R"\=F)G>[DM"0._%$Q9-VKC'\61*@C?1NR3G8FQ>>?T7?A-@YZ3H5VG+ M(.0)O%#6.5(B-HO3(?GZT;=BR7">A@'00#(N"(+"*$-=2$%\E(JD>=&$#,S7 M =MIHCU_[BX -<%I36;:;.4BB.9,\[6;:_-XTJ<*)??HR_5=/V$"RGS%JMZ! M1$9-4*@(ZT75_!2ZPA^8R^?_QCQRICX,YD-[O00W076N1Y; MZ(/G)_@=>V\H]-,5Z%G8@+[ &"9:!(<<,Z5#SPQ7=@G'[B094!<)3N.N,!,> MS)R24F$F"F9*;ME&%$2""."JF$&U>B_YN*K-7+?Y6%K,BC)?D:JW8D'3!@VZ MS5X<'NEG[,XQ;N6,(RJ/?+^G++AZ<6OA"]V-;1E[TG&HX4WLJYT-[KS!0.N8 M!J^2T.?RL_YP86YVJJ7AWU_^U]!;+46S<;$0'_'08KCY4B+!59)GTFA,4N:2 M<<@WH9W#>Q7LMZ#[KFD[!__NT%^#>@OR6!4A8@X5,2;?6X5]_4Q!Y5Q,"8]7 MI(SHF0O!]LG7G8RR,UC\-CM;YP3+>P!?3XX%-"Y;@;(4M^,H-H1Q+X5MFO/_ MJ0?PT>%8*)CE"AUF\\SB!6X*$O[GPBT\4Q# Y1HD;XI*AD^,S%?;#4[EHUH; M=29H+!MZCV]\I7/ST:6KU;,X;8_9")8/R9\>@;=.&RY,]*A,]3"WKFD.'A<& MZAFF1(2CTP8&E<[YR>%I$]T_V@?0 M!NR:B'9*HT/0S#L9K#OIS-S0M$,-Y>Z)D)I611-M3X:]B-<6'&>:^A0,17TX0CGVH@/>*,I1C]C!)<"O2&P);2[ZK4K7 M'&7C>KD8YJ:?M.MS3]>O0=MO]MU[.$ \CNL>*(E?"9"!3M$:6IYS%&3Q80D8 M4^9+^4=&H_ZG'F6^Q'\TT S6YA+* WO9P%>W$ .'MI]3F]0?,I2MQ8<6NW)# MD(%RAK':R>K'S5\QTB^\5%SXNZ,@HE^0IXDW*PDQV8X^"Y_A4*33'3 '-'), M%BDQ(OY8(WO4Y5$(FX@S!^L#D5Q=#G4&"G\P,&5U1;$[BZGL0AVR M<5@G*YQXVXJC/=?KTC#I+D_/ZM5B;0$IY/,1-_1Z?)S^O:>5*B8\D.0G MPO!*Z1\=2!=KAK;1C'8UG*-IZN&2B._)QF4[!DE?)W7./+6B$1!/##Z3S?PT MIV&2Q$X72DERKLW!B!*><)+V1_F^IK[C4*_[R63 $*\>Y?&-_G/"\E;'0>LU MX9$T')4R'US5^VDJ3K_I8"28:\(K0L$*9B,?%KDPV3'1&M]9\-[0M()^C\/Q MU_OF/OK'$3+G,X$#8RKJ+2%!\9E--%KF/U(Z?+Y^%%G6E(,>>ZDH'[EI3H?A M?^6G_T@28[/;(8_6E93AS#S4%)'$Y2M\"VS_PMR Y\^M]2 MN2_Q%.Z=EZL)*ESA2+8UHE)S:5.[O6XO4I\>'_*(1FDOK2 M8F9*<2I-7"E[7EQ[B?97I6L@;HB*KY-JQM,18AV?!1,M0I2/>]=$@.8Q#=1D MX/%Z(QG(W:[[XQ@W&ZRK!4I':IOV)0/J2W_H-D=X0E0":L9@V7ZPFD0;.",<49/"W:_56R0\=CCBJ_B6]=;!^\EF3F+;!X M(<"PE^I&SQ-'%.*H+,BZT&&0\'07=JKITDXILHCQIVK/2,';2]'"!@\&-#XN M!D*RWSOR/T3-^N]]+VZLE]O;L7R%D9VPC$">YFLB4H@T+&L'V0SE$=(OQ^[IY)B6!-E6E-3CZI+ M]&X8:G_#9GF5BNB\"C" SQQ?<5H4""C@=O3NM#<:-(A^46*3S!K7G*B_[C@FXSR MV=GKQ-8GUC(%LNN3IIL# :757F(FG:":U>U66F8TSKIZ]\ MO9$_[%*Z\3Y!A&/=8@IAXR9$U?\.?OR^>KY/6$B N D!WOJB3I#'KQ_-ZUNT MP3&OOPNZ8L56/%?D9E1VZW)>64G=-*JY[\?8<(2J^8?=BL.,L;Z"]U@E&0(( M>XAB)4SJ?1IHV,*TFI(!NO(WS(AI;?=SPS]IU:;.",0)5\HY-.'AS7!VAK63 M0V#F[RIIZ0NZJ1?ZSNRF@Z,F$HB">-M( M^ -6U[QEKN2!**@;HRNXW"W_\XV5SA)M^$0R=L;^&)1+-XTV3+>V^IW%79J! M<:TBMU8^?:IAN/EX!X>H*L>0&@K4?D#Q,]Z^GG5'(.:1RI:U !KH1(O1T&PY M#C^P7?R$Q:A$7KYW%!)XX/VT+B)YF2.H.V;V:'U,C*4(.,8\2 8JT2UC.' H M)4O6UC8%L2R;C!:X>GE>+,K$"O@_'_WQ[DG29JI6&91IHN'0X*A4L%^IK63: M?J F.,KAP_JF/=N)BYR#:O$BQ\.;MFB-7M_"1P[C%M?')F*7!#7FW MY[ZE]-%O$A*6O>%ML'U^)4HA^GV<4EU^$#=IO-(PAD41X[)H8:O/*"7H$&>I M19*N[M\V,U)(P^C-9S NU"IXA QL1SKLG-PD Q/I))TX[-Y1Q &*%*^CS/?> MPAA_>*^VX1,N9FL<_-%.W@+%M%M9,-G\U'XM^;*!9O0Q,W4IE,2L$>TYD)Q*+Y+YMO!A;'R[B 5 SG M(^H'$);L!-LO7G4E<27+/.Q<+R I@U%FRBMG+S@+Q'6?+%$V;X/OC!:U6,-P;_A:7\G?:U@4FRKA.:&U?,>YSQU*0[1AJN/Z'NI%NK0'*0Q MB 4GGJDGA(@\U=^#3++^*)%5NB(T<4 &UI2L-DMS!19MZ'.79R'9A*W=J$\X MQ9BY*2C,./9NS>M)"[.)U8K,'X^DO(_=6Q<&B!@M/N7'JK(E:=M$4+%_YS=L M!1@U=V2&@S,M6URM#CSH>-B SQ\+B]GY/+KCJUVJWW#YVO/GT/IU9!'&>TB4D\R7QCK<<\+:D. MO:438/J"QT'K2&Y?^&!GH\"Z1=R97WM8$GZ1GVUC55+,X]#__KICS!W1D-II MT?O(%T,*KAOMJN6Z>67-Q6D+Q%N.^"N3=\>J'*$-#S.O98$CO]YTD=BA.]:L M:)S\J Q3>7'BM>&=T,>G,,D]_K>+ H:4^ 850*XETS\M+D4VMRWH&*H4,-H' MZ*^^[IW8&3A:$R[VR8?T#KB=/%OM=F=N7$ERJ6XF$5?9 ME+8>EC]CZ9CF^=$^P<2D]5X[;[TK=:#\RX2W@BZW616+:U.P1#F3K!:.(2?# MQ?OX]TG)7FZEQ\33IRZWWQ1^].#6DQ$0IY__H!\'UK21;[-%=]BY;?4%Y^B$ M04VZ6(),[O39=1M=&M>;O;Y46EICT0WP3>>]G<;T59:]_#Z^"-+E $-4:1_] M4 -WL=\M,(N=4SXA4I(9>I$SZ%[M@(JZ>/,RV]WU_L[";H6DV+O69Z9HPL[< MD.DQ-B4L8WO/F8SRE.!I_9I+ ML)!CFPF]!LX&/WTR)+VFM\YHN'>UR=ONL=SS>Y7/H!6P1II(KT>!\H\"G:%> MN\G].]J*%^"(4@@X#3LQZG1'_U@5,GF/^IJZPJM:\29>KTBP>*$H?W:X>= M=DP[&VK7)!NL$XWW(K6W4AR>6KI%HH43 M+I&D1@:B4+NRPJ0TZ0E*S2Z2\U(47>3(^YI*L/T+%3IR_QSR!#11C\!E^]%1 M;G?F:4S!]-32P?UTS+[X.G$LUBAP"O1N[2J#P+G(B-HUQ7++1Y!T0E3'C' ] M/J T&PI2_81*4:L)]%W:T4X).9=_JHO1].&/W3+-9R)35RQZO,A $.D1(B'% M9;0C&NQ5 NW#;"W)RG_(*EHN=O_0<(>9"KU4Y,SI.348\>&BY]DGHD)7[WMC MDS8"_;2ML&2 =890KT,:SIS4'UQL #/;@UT^+//<4[)7U_#JM+!)4-MB38UE MO7HM^M",#" X0SXXT/;I#^W!]&O"+S3*SD2F7ZKU%(UU-*KI MZ>%?>8J23$,5R>Z968R2@5?[J,0:_1S<8X)MQVM"E0>-H\+B[6\XP:2C;N8T%XV3PEH75W?7[A5AL\ M:5XVFXI_N6%ZDU;XS/FQ?HJ>$!15(;[#RYPOCNCKO'(V0>L=\CU"R:X:>M;< MJOAAQ-H)S"8)&C2:SNW$ANYJPC @]G&92;%K56V!8H\Q+6>RQ1<>U:]]$4VB M>=G](3=59<;7_LAO9*3AB*%^W!G%O)1'4N]%<>UUV3FII5ZK-K**,*3O_QJ_%@].S4IZ&]JFB5G)"H\G=&CIR"Y:5"%" MG!Y_BEQ?-/#PEUM=O@1YE7,U5D8=*I^L^7G1Q+IB:; MQ7O6IEY8UI5OY=NE]%YZ1:.1;P1H*,R=':G]>AU1,P!ZB%[T@HGN"6FJJ^= MB$X')C-1Y0/$$P,2",N0.KK=F%&XU\=IDPYW7Z$J7\5NDKN(&/.[;EU; BVP MS8$>4+VL9.L:XEVSQDP&!*L72B9D1_<@_NC#Y^KZ6N^5%RYD.T9DNP<+V7GV::VH7 M;M$$TTPN"*K3TVST%T M8YN7]\"UPW.9F. 7*S1L*F=#\@2/WRH3^*+HYB_20"B:G91D@C7?%HY$6.>D MV#W8EZ&_=UU#ZNW(GI-MIX#=S1YOT!H7#M3*ST$$Y\\LE1LKOK/@1PX)QRX[ M?4YVK#_QT)I.M'K"+,O,9]0V7.DX-*VO+5-@U*.17VMD==?)RSIA/)OZQ55;2U^O50[WT,A$P/!JSFSEAL7'& MKO)#;H!'YZ6:X0OQ2OWLE6K=O,#+F^?4U$NA_&$@6_ZS/^N@N/FZIXGN.=,. MNVEM(UVH)U_,K_-J.C6'3.]A.A\%K/A$9@[-"K>*( 9#!P>AI>M84U.G.YLG MG)-97:2%Y?2^A&H,]9A'G;<%6(P6/N9$.\^5H?/'T)Z$-:3>@BL$?5"SCZIW M_ZGM$A7 5!^F^SFL=>)NFE-P@,UH7ETP[03K.Y9-NN;7ZC?;+%W"^;@TM\-- M6]/N])1(K,E*^7.N8*(76.OW@OBG>_SPV+CQRC8O'E@PKWIMW/V4E@GG)/YX M:VF1S1XGWN*/W.\3K@5BDC+.V/A0!XJJ',I#.S3\C_E?.2_9O:*X71>R4SI2 MVX:>D.UYYF0H.Z%I8T=SK\R-^5BLT98;6GORAS\)%I;1QJW9I%GJY!N0)=GQ MM6,P4PH?D#$+8IQ9F2C62/-_:YB4H[-*]2B7&B5V1104KL0Y++E>XN2GG6>& M-KD[9&:J"CNMS>CPO'>9]TIVX F%8Z*)A,1% M]*]_879*L^-.4:WK%"0!&K=K.;;C0C]AOVM?8.QP;-$TS7OPGG>45R)/.;7@ M-7K>(5Q)M4^*5W?*^VUD$/:<:)O\$Y/DJ*+QY0./SYOKJQ)LT"PZNE-Y04$= M)OUE IB1ZLH/1NH<>\$(.-/1!^.GF>)7,,9Z+Y5+"*HS&UM/8E^I:9;-%,7( MCA:\#>A%;8)W7 YYB?IDH.#P8/M@BWE\C*1)*B4#UK!(V#89@%ED:5C]ZR$* M"_ML6%<7=(/4)LD,6WI:99'R:X\R7XJ%-CYT^EF#TVPCS'#(V=.28>G#XIJF MR[.].S->!JSW^K.?/K,*O9,@!RG5NS,P3;ODAND*+6V ,GOZ& MQE-05XG5C9HH ]:O1\=H-(6Z+]42UWOI6'Y7%KA7/6YTP M82^1YAMSP_CS2S$^C8I(V%4![TBOE*^?KCQ7ZLX)^1!5A6+PIU1O+U%P)!D8 MRRQHR>3BD\%;1GMDL#'T\2_-L-;AF:(3ODD4%:5.3&^OS-UP3+W3Q<.=<-Y MXZ%3O>P/QS$7!(K%(:MR,4P?$O1PU!(\XO1C>,W98+ZNOB+TYSJ$;N'-ZDF- MFQ)T-_LD"1F'8%"09ZG\Z(PED]V!S4R5>R[L&:'@@>R+(D'.-;'@ZFL)+8^C M-QVMO_ CU(F"!9IU(V*KI0@GB.9G9,6(F$0#03AYXD[EQ>IKB/8'=V]^ XA^ M50XFYA)]ZQ#+P.]\4_"A/L.-K3$<2B4:GUQ?X"A?PE5'^PH;1TEYU]>E\;15 M.:86]GN0]$=O[I9WL)B&T).,[#D@%UYV 6/\V4;$>\-"C:.>YN#V"/\/)G9" MS>@U.595$=]OP:GY(?2QQDRHI 5:&NI Y?.L*VFV:PP?N:M:BNU8C&_GWW8#:]Z^L[S3-G(.?;^^-:#[O5 ML3D:5@GWS!%7'4U13V(2>E9U>,C1T11/0F'BWBIH%OJ9)^ST>:3MYUY4C:"H\T%2 M,%?,R>K94(V1KT%HWG+CIAK>4@_+_>LO8.F;(QR7A97,JV#[HA#+2 L?J;GP M'5@$M<9 BB:84RB=H>_QH27N$ZO7U2[D'U5CJK' 6 L^DQJB$=(3-L.3:^B4/7Q7G2V\^I7:ZRS:).MLPGOHA MR%\A4M"3LPV+1/^H6]V8$M\OV//87R6I@W"[&[HH'%>8A*>+U.$#)_D9;?A- M65":]8/#%&JZFYUE@9&7-;T(/:O*UPG P\"@=M\_RQ73E> M0](0?HE:9:4C!5DD/M"%I$,32?=YOX!V)5;0!R!MN"9<%B],?"?W$K9J/H;: M#OB775B.;C\P"CE(.@=-V-(1DYP=6H!J[3"R;"IVF*3>$FI/FHYF9B.R]!/5 MBY>Y7(J6#_PS2U:$BO.^3X>OR0@9&- :7#%B*_SXXOHZ0-MCL\Q?*1GL*80, M-:Y2'910&L3;E4^%5"+2,,9/T]@GDU[,+"8\Y!04$6J(Y86%I=V'E[;A)42< M.;;7E, GCLJN]UU"C4/H28[ ;CW6@WP#T>/?$Y M@VM7IU_<3SC7?B*SIM2!!YE^/$_7H4_!Y=*GP.N1\:+M73^(?2W%F=Z"+]4S MC(@J>%2;CN]](X7;'PG6.J'>VZ+#Y1&L>2A$M?6+G[UA5X0O4%,%_7CG67(D MA5V,D$;1_N0B7<&'EM)87.C?CE%;V&&JRC.$G&YOO[VH52\^=TGYVY/U\\R- M6I>+ORJ:!?AH?D!"3D@8L!\(;XZ8@[*6?5^$'%Z'JK0<**$^3'[[J$U;?>W% M&%> =18:L<\(N2FQZMUG,D;PQ'TB@-KYI/"*\_TZ183()4'19R7E+8R.5>RT MP@LWQ5J?:\ILHE^2+OMIX"5#_#1+IZ&5^J&P4ZJGF^S*&WKXT[NXM S.__YD,V)I?-Y+QY2=H-6A(BS_P+I/P MT%-$C4=];C73Y+TNUC%19^8!N"Z&,S):3H#PN/5,4X@M,&LF/>5U6%>C=\MM9-G8K@ M<]/L7'4UVQF+VT#P9IU;#N AQ.UF7 &SJM8\K*\SM1UN7C*L?R *OX!YP?2Z M4'F+?N*4*EO4B';-+&Q^W2*A2>44VNW=IH$*6( MB/0.2E5I@@)28Z,9 0&EA:("0@A%>JA1$%!Z$1"0WJ5)#3W207J74$*73D(- M$)*3M?9[WK7>M=YQ]C?.^/;8WS[C_,B//&-D9MYMWM M/=J:-K VY:A[N>,=J].B,,!RG(1C6QNUP,@0K_D@N;EJY.#^UN-=U/P#15DM M;C\W7KCCLSA !J;E.5<7JYZ71/BTJ9;:[@"EN-5*,U<+5WRF9]1U-)R+ M(]FQ\,T-R@]5PDVA;0DL8H+%@5^J=\[U.-YQ;WG#HMX#F ]L?0.[H$:1#U,X MU!OVN38/]KV,-JE-0E%MO@IO;X"\KVJ*V0(\_\XN97<7\,+R\MAB&@L14'$ M/E52:W>&&;/31>X4.Z [HHM0=K<>.JS9QHB4O[VD0L+F?3>4-E(:M-WY=8<0GZ*5-8ZKH8T"1FQ6A+L!+T M/DC#\!8L@#M__9G/3^$(*L7Q4SQ9LCJVI';17O9I52V6NS]-*:7:CJ_26HJL MTF2 ;48J@]SF9=ROV"\3,39^(A-X7D@1K%S)Q3!^0&>LRE-XQ/74\-=3EIY^ MHVN1#L::&]'QS?TBMYOAC'BCQ4B.*9B+-K8I1^B=6U%+]'H\POTH5H,<,N%< M5[1V)9+'3N/(XP(_Y\>N\Z^.G[&JGTV M&LZ&'6U,K<)[O#Q8*1M&KD#L$R9 M>\K&C-^7U(W-MOKCZV#I.B,$6+K>\4'/J*0B3^7/)G+IB1!['[5"6 CXS%BA MV5NDW>9;IT@HM1VV4A(ETPLN6%:!O<45+#C20N2]8;$=7EU58_M3:O''*E7E MJ"<.N1_*$D'CA V+@NF>/L5"M4\G$!Q\)E02I=6S MBE99>V+^9HCX*VPC/5:\7Q.+ MOM!87W[KTMSRI,\W;2S\K VC19G58[Z M%%K6@#\LHI?+@_@M0P1><%F'67)=W(N,B.>(#'$C,5QCXRF0ZV'318-A^R$0 M:XQ1#NL%2O>VIZ5<;YWP)KN\C,I\O&RP$K0YSJ/4/U"2- M$8)!^U63R.A4:P+KQX)I" ( $ITHY,A+FKCD$=7.')):1'>52U^1M&KUB]T6 M/SHMJ%5@ F#0)X,E5T,$(3N!E2/U%%UG/_D><;Z3Z[ETF=:3KFWKH6G-F)L] MISZ6)?W06 1]=6R&#Q1]WJ,.7'+D[F-#L/&IOJ@.ZVNU&/=\N[+AO(G?O"O$A=6E7:+2*";P(M M:9ZM/9B"X&:F5AK->P][TB9?]>]I^_*9,YJET1F?Y:\9.W\/V*28[^E.H)0" M&/G[4Y#MA(TA.0A]XTURN'#(0B&2_DF/=3YJ7?\P!I7=,:NN.AS=U2F9%;9T MG5+@2VIH!7:/P1\UBLI,X/=+#J2YGNUV.."9E:/>*P#BVQ/^ACX?2V M!^IXLTVK7-)15.!1G#]2Q0GSQU&B*BOADPF@H7UM>LA:\6RO6U?Q^,K",UV" MI-')(2(;A]1"E(W9[S 9F)@/7[^08%?T\Q_B;[ MS_24,L%'$QM1_'+ALQ6AS=%O>1\"Z<,>JITCU4+TZW>OU"*LLGQ8#7J['>"&.? M6[9@R@^VMBF]@_N%N LHPCQ.5]2BL^_A]-6;G@!:8SB_N]]:O]4YCT-QGEJ7 MQ\N5",7ISGP0NW3_RP<+P6=QD3;':EP7H?,5A":)/?,W(MXJPN5KRWG'0*1+ M.]X)>]3I7E N>&8!S'C*P?Y5TRI#QM_D]&9[C R C'4_S@@YU>Z6R!X5B+= M=_-4AQ&F=?ILQ+767+LVM5-MU.@)MH.FUZ$AK;P(3-#-U6PMV"]U'6UB@*D9 M-M8V- Q=35U99A>,3FE^\?)*="M\0)JF,Z]4>F#&1Q)GFK7!RC [!1DRG9KT M/&(Y0@644S'[("M!-%U/4Y W$A,\7HTI:#3%XQ$$9)>^3X$8:<(A39NV)I&1;>70>!&AEW#K=[\0X;6X'M,#C2WK@7=TI;> M;*(9;:+QD1LL:=!.QR6TNLLKYV,G-8M!I0(8$T5PMF".3);#\M>Z,]=?(@(L_EG*+>:&/T6@$K\S:.H$X&NRS%"X[?8)\ MW0ABJ4'?/K\[R**KF#F%N?_KRVL8[V$NU@Z-"5E+\&-OQ#)W5P[K/:L=KH0> MXR?%%Q^,4&>]GVHK"[Z\H&9&;L%E4 J#SP%;K1*>C._W\8E\3W8HVD96"M=^ MV [MV3-P#2LRDVGV P5T2SNWSM&]K>RNK!7#*X>>)94)5CJZ*72J15L;H)8F0!ESOWH^A==1\-\TS$YZMG5\.X'UY^_[IA MC4"&4Z6!;%5NL(RDU]?X@]LTLA/Z0VXHMB,X)QMJ$&\?"['F=PHU\E2,Q'D0 M 6^1I3@7 ZPGW'P"?TM'A>GMOTN@F;T\E2<"NH%CR$U'K#8A;6=C9/6/ _-W M!H%+2PTD6Z\2@I'[%<:EH+\]2J<#938<+704>]C[SFV)SWK:VQ]HON2K31+^ M.47/\PA?"GU>NV8\2&L M>-8P=:'_!0OS!>!R,H\Z-ZW >#')0Y$$MKTJYJ:TCT!VT)3N]8)^<:ZF87&:RXF!VRDS2"V;8HRB%#!V\*%1X;B5G@;0Q) T$ M-H"*X1#U))DT1>/ RM>S-NV]M#4.E (%3X+[/5=JO$GD"Q?Y%..7'3LST^F" M(;1 [>_C)RU8$S9]:A!1]]]K2D4(IN+Y M.-XM&U9Z#WL/O#N!@>YJGUBI^,:-$P$!YH5J M^;9I%?9CXX@%6N/.#@]C^^W*UXP-[I)-HTE4F2G/&/&JS&[ %F\['3@,-C(Q 6^'2071"#$QU+:# _+Z*',JB8#O[H@<],+CQR85X$K4 M\3M;/ZX8S-%C811WRCJ\9&;[E MN#"U\K+LB[]<+A3-Z6.U, "P'1Y8 $E<[LL^"V&WB) 0U]2[!3>'=\3,Y/6<0QSTUUE,9TI(_CV$]\R?!D\'?<#+R-?KX:NHY(N#; M(]X36B]-]9:&J;:TW3>S9"3@[6%&! R=F'II_KW4$+"?!,W\$1:1$1UT,3I* M+4<^!%"8L^9>)YYV(3Q,Q!%R;C-"8#5T]29D'O3!,N3>8_FX%]24YU_LRC$+ M,BEYT%9+-4C.VXLT)XER:(5:\:3EM1C%L.WZO7[5VQ8#DGRE(1"C(3"AA$U8 M"$6 VWACM /.0=IQ1+9;OV7EFB*T3J.2O"PA;S,S4;O9)TG_YZ[&VN M]XXT'VT@^[Z>]S!++C"'V0W-LM&JA_E;22CO<97W CPZ#'R5T4$6?-'UU\#, M'YU.]6:V\I;0,(F&/LLNX8\78Z_JQ8-J1H]<7B3?>ZV M?L,%#,M&J^P+J-=,\ ?7'FXA4];'9?+W/[ZL\B2/5E[+9D1TQ1\5I=O+ M#'[K0J?W9WC&!Q)X>V^Y[-Q)J:,U=2#!.0T5!3&> :WZICH$PK!$PI)A6EW* M6/4B$^,^X))KX2>=>SQ_2ZV42N-*B0#^7\UIIYSBP/WV0H.\5+"9U<[H-O+6_.@K=C M5SB?!E+6YZ\TDM#LHD3+#3^1*0A&+?^G82?EY_(SA*:L5?0$1#(N7BJ"\@%( M^"CZJU6?HVL^ZN3+KP B **.MR^%,$#JF^HR/7>O%/$C[!M([UE;\GLRL MV7EOY_J&%H]S,HM)HUCM3C<,,M2Q*'=HT9%N#1$O[T;(/ZH7!B77LMP]_\;3 M4CTY6[/74O=V2[4(:PMOQ9,FZG'74%_9-IFUN3X^G&V\O BDR(&_EB5SVJ%V M[]O0HACB!Z7PSO,T%K_^@<4=]C5C] W9-=9S0@YCC M)5&K(0TU([;+Y]\RFM)-[JE.0> M1$#I_(K%90=MN+?K3@E:Q'&[//P2Z^!Z%14V] M\46HC01%9AO^%"TWH3%D(!/-$S]]1MOKJR4%5>+R(0+FX.8R)X;#YCS)\&9" MD_[&F^'*4*7+[:*;8N.H2>J7'*[= K';&@)C/ZX7_*[,]A?&W_"O"8$_Z?O( MX#1($P[>CC[E9"0"-#GL?PM9_YH4L"$?MLD, >0H1UJY?$6MZX+YS5$=V(=. MD2GTASLF)]Q?G3:5;F[]-D$-O$_5<+IB#]OU6:ZLR\_L!*>.LV>4!5*B\FH\ M&>Z^@' S3[D^H1:XJNC09>>5 X-'^%V$!1MB2T/P&MD].8H3H"S-7..9 8'' M(T8:"O*]/9QVJHP ]H>IM69R2O!B>)>\ J,Y810E'1$O#IQGQ*JT']34Q3X? M?ADT. .AGXH2CGGC<$ZJ9!E8 P&=NQA4.,%;.1&8/G:PI617993\1&7W=Q+AIU-@F_GNF:O/QP/E*Q'D>+%9([:/3K]A'U 2WD2W-JFLW: M:\T9KV&GCVTC':]6B;T9R@;%N7Z0%(XK+OT(+U_%"C@A@Q.T1QS%7'%#XMGQ MACF-M9&OTA.CM=HD"V^X]M >HQZ'Y%C&)EC!S1KW367K?>WHO-7J3TN*IPR* M3P7+E0-4Q4/:'S-(/2^+WG32*E&8YPVL+* M\&V!&_Q?*XIL?[Q+O'_M_E5KYI]#@J^'&7[F>&=-VAJXRQKHKRD>2K$7IQSO M?BEX\-UKZS7[D;1[R$U5YK_0S=]>"9UE$ %+\=.DP=4CC?Q(7!7 2_//-ZQY M.F[.$ $">Z0 4];9#C^)LF5>?_XW7OJ4LN"/,[] =F5F\SXL8T==:D#&3,]9 MUCS81:E74D,8E1M!!/3:W/\EMASPH=/B^TI3:F;,L%/2C#E6TR^K*=S+CQ8X M>,RN/$;9U@=:X,3)MMG/<_8]L%FL,*>;J5J*/$NXQ.-M=.SG7"A_!YQ(.=/= M$@7E;S.OF AQW0GF8?850NO48\WQ_#HYATG/_7H%_;LM).]\X1ZV4W??!H1W M1E0=!C+;ZNN;F?O#5XB >UK]1,"$]A"/+T;6$$N!F+-*;M,Q%>AV$=6/04,Z MM6M2)]6I=L',>O3K,G%<@#>WS0)4F&0]G/EYGK_(#+GY^+1/_YKW['Y)S?7?HCN4DN$G=G3._2(";R< MQ0+8YEI36(W_@D)^"B=4C8^KD'QJ9)I!8=PL#E/1['4)$;.6>F70=[):-]Y6IIGEM ^5JUZ2]C20Z5LA^=9 _&M M_/ZU=Y4JVN_SOFVXS9*.Z)[O$Y2(G]J$.E=+4I]GZ_S$Z>!N$=XHB4+DIZM M[:7Z?^C'S Y3"5BJ3RZ$W;C9<#.&\G[LNRGIE2-S-L4;O@N.7#C]UD>-6)[" M=!1J9MW=V/>30$F?F^&U#I>59!;XE1K*BL)IY.,8A&1O M\.5NZYXW@N MCBV-YJKHI(=H<96*=/'.U FA2-J*6W9DSSS#NWUC3CN4EV+'K=%"?A6>_"] MTR=$@&5UR*/A;6%U!B;56HC8]I(.1^XHOV7+TKR]6>X6B+E;Q=6*)R_VJ6NWX'JKSI++:GBI8*N MY=ND<@X=^*KNBB33BFC6Q-@#52W#^:0>"D?36[_(?:"88]I&_H5% GH\M;-! M,'7=J!"&-Y8F:.]-P6L.>*EL9WFPQ>\#0,.+]B(JC5 1.;-92;(8^K*DZ7-O M\ML7^UD_O;B[M II.H?ICRBIYB'-\8?]$^)B1:\B78NH()>9K#Z\OE 7I5WL M:=Y,]R[IJ"62L)B]1A96Z<7NON5$\.SEIUQ!(AT'+H3O_(0N"6X./\SLNMD3N\ M>MKU&,H@B97*^%^M22IMU-/*D&91D;<1G%5U$7IZH+US?V";H :INP,P8%Q$!CG#>MHXA&JM M%E*L6^I*XAS=(,P=4?$QGM$F=\3XZJ:;I0X08?X _E3/$M1_Z+/[W?Q=I!F( M)QL"_B[/CF2&#UEBTPB U;0_U-G-0Y"KY; !(@#@JOT?ZNRE[>;[1HK61,!; M>>$_"\@;+)2>B*;>)A$<;L;_$) OQ!J=[\L*"3>(G_WA?'+JT;Q/]U36P)>R//7;B-AG%N8MXT<$"Q% MI&=VZ A=RB%("*#:Z1@XN:Y,HD4M+$=$ M0 (3O$4!6T$(H7L+QP22.-%RNU<*$]ER&B8";T?JC8 Y7OPU1_BQDQJ>'\D) M7$W'49)L@-$$$X."_V\97)FEPODNT@([C_QN8N$A=S3=Y_?;1ZXBANZP5XZ& M/\I]T&_54".N<7?106F#!,'^.,B_JZ',B5<=Q)LNS(!:4F4P36FYT),0V]<# MAIB@TSA3[5%>SS!5.9IT69<]=:OPFZI$)1J^ETMPEH7"=IEQ)^A\14-9#\U>0E MQ3PV(F#U$4:6P()(PQ>4/B$M]H%3^"+O&54J!:FUXWND%7P'[HBW( (R&+^C M<<:S\-W<1BE2Y "2B%08?)\/QDD$T( '",^&SI#82,)[;7+X/-23M,R3]G]< M)^\E A $22)@\..<(U[,$7BLIW9(!'0 3^@5:4FQHO@7$7 3.G+]O\F[0)S8 MO)AUL]D%*.\5L3"OQOZRPO6*]MQII39ZWPK=VGK#<;4(&=]"^8)7H3%Y(=OY M?Y[_I5=L>)2'E,6ARC'S?2[:8ZY*LD]BE"Q,:T9R@L#@T&/JS]^OA7QDWJ?>:?_U"9P'JW^?$-.^(O9,-L"3V@!BQ+PXG=!&)<=>O5QSM3 M&^7ZD@*>K\;S:\6^6[0#O,1^$QL(\=$E++XT)N9II8XY[ MC" "A)Y29@^9V9,69UZ[Q,GU)%8"0S$1T/T)WG(#"R*$" 42 >\+X;M6O^L1 M_(^VI9-MFRJ'^=6>1H?S;N/A&ZXZNZT_7,798&S39R6@"^ZV*=QC7SI/_^:8 MC9M2>GW_3]?OJ2E\GHON?*ZKZO>)3)!Y 7AI:@$1V<2)TVO;Q>W1\W^"5ZG3\Y^WQ-N3C M^?^5=YSU-HD1 5TD9*U'Z-B(/+NU?K!6M6+.0@0LP7$WB +MT["9SS:NR[.5%F:^SV"[48U.\*$9MG96A+ M)P*RJ6,A]YS*U)YJ.@:C*UE#.%N4.4.-L4_V-I(6<+I@IGAFC9)7J?,,A_>2 MU7[^ M3.T_0;>>6)VT):66*BUY/;EB+\OSF)TP<%.E]IO<$TFV+M';F\ITN-C?CYM+ M2Q=[.'Q4U/]EU%3UKN%SR4#B(8R\F\NNX.Y%HQ"ZY!=L#&&/#&0/SN#ZVW+> M2#)%0@T8^,E\67N+I*@6 MBV%CB#;'#TFL@7=2[N/UOMI*E,!>;>@VQ,#X'3L$CK+J;]AD6'.V+)T]',8L M7!\H@.I_>_.CA>Z/)MMS>?RQ23OKQM^B2-&.Q 5))&5ISH^7"/A):4($#*%^ M3TC^FX=_%$W0HO%>FH1%^,VDC'HB(%(#.>VX?(^+;G.9-&T/,$A"N[T$$:#! M5S)A/FJN/GC N;IP6\/>4:"'C<#W59TW0B3D[ MR:;:)E62].(<(6!-XOFI) M<9X^RBM (W'GGPSYK+1+\H=]*0>["PW MUS/0KA>F?;;<,_)CQ.E@0MN3F)=_!8E5]ED\0<:!S-SR=4RB,:?[)TJVX"\T9;.+!>;0^?,+Q.H$Y?4379DNF@O>&E?TN68Q+;81G MY@86[O%0)@>-P#/V^@"+H 1!CL[0';RSCZ1U+BSHEQ;A1ZTZ2[-]>MVNS(_^ M#'SWN6W]RP I"4HDYR(=JK6-P#%\QU>?EW;-0S]5H)[E1$#,=>WF H%&_U2- MBT%H6B:"JKGT30-.:>Z4"&"&MZ@HAW(EE7Y)$)UU]6<7>F(7-T^[W!!:]68S M)XB"CCE:MIDWJ-,DN7](M#_/^R::2J V*F6H/W8G1 H7YMG-B8@'B%)LKGP2 M_>)9#3[[001,/'P]H1#WVZ',$S]E-?)\PHA76D#[/H_P<"7.(2/^2 OA+?=3 MS0-^)7S^'?G>Z5AT&?HZ5 :(JFC3+%R/E@AP%+>SY]@=';@ ,7J9FUD]=YRG%%:L5/BL4/*T?IG6-O MS>S>U;U\F8+NL1V='PN,\I):BIDY'=XQD>/>_3A["1!Z,Q/6TGW!&A$#>K%>-U M^E:W)5/UPY7G]":;-L];7RK6/JY@%G2^=3WX\//$%OX6@9]#^A.!IZ(N5/WS MP)N60U N0N/26P#KZ[5SB^S\ D[OS!(*\+=Q]IX+M3>7E$E!S)."\\ M0ZOSM!/1KQZ[5VK7.'^?6W(*V#*K,D$'[O-> G=SS_K'QT@'(@]O]D!E/U^+ M8&U^.Q=U\=;5@"Y^BKK']GF(M)4MG&'_39 &W%B$(/N?U$]F?_OC]0FV%!^/ M#DH[V"F$K^;_]EJX 4H$""+F\\Z\U]$G-SD >Z7A:9P'CN2P(_V1X(_"F,,4 MZ[RI/K+@%@.O<2$R"FZLGXA/L?8MK*FH0#8_B243C]3L9_MJI^&-E7;9H M-&#OL>SC@;K3DAV<7Y)X=E5]I&/'#_3'CSE^8[*(:G.[6@SW6$JV>[7\IUWN MQ[*2DZ;J0VI7R3S?K$Y&1GZR=H=]E6?=JI^7N(*+-Q7JMA,G0-@OI%8Y*O7J MJ$BUWYX&%TB0/3W];K=]<=K_EA?Z$HY_'AXR-[IO3VY>,8ZBH5'B.T1KCUG4 MQ% 56T+X#*@T]*>WOAP4UB5\#_4VI30I&Y3VGGKI"Y4NKHK(>+-G:"2:)\4V MKYN=NNC"G9224+^F\@H8 MK+'\=H;ZOOXCVY"?+P0Z MO#;OKMI A*UFH,MY*[2S22.F\#G?#OWP4]!/Z!7(Q[-@%_M\VU<_C8UZY+?C M9CVOI=SOQ)?9?(Z=MLB%?L$@MYY[%ZW5\=V?]Y06J3\%T=TT: #!E=?7N!<_ MB(]?/->QG*Q(]EU)9+ 8:#U ,;G1Q#S.TF^-Q$R@B("*9<\*Q-;E :%M9,*D*_3[B@87XMO@_!H5NKF4-7?1Z7 M5:-G4Y!2<]=?-J-L]P@CK'L;,89K!(K:1G]0 = .?]6R.1O@E M[V]HV5[ ]WYHWK>S%$7^EQ3E;\T'E"MR!W+66?5,MI.6A02Z^66 X]R=*^1A M (H+1A4X\-R,B$EY><1RPK,(4)\6C6P]#Y0Z\XKF5:T<@!5[!QG_>'P\ NP' M7+9'7DDV=CZ:&-'N.,+3B08?[F!,3GIE7AAVKIP/W2S?T._)/\N8WV.^D.K3 MRGOM268\%G^0UJA28XA^'6YH=:]6/"PR759K87YXLD>)Y=NIC'$!3X MSBS@ZM(^-R'Q5!X'57F/^FD.U??2>\2? /+'YU0.+!_[0?/9Q1"E"EI2ST:3 M@C>Q\YKW1:50[QD,)R<-FT59%4SYJZ*70K^X]490;]/>64ARK#NM(P),&UH@ M=[O5O"$;\%V\%N^SLWP'^+QP#:9N3<;+K.ZC/2RZ)(]V3ZQB)ON2L/K MJ7" M;I8HW5W@C9*C!4I\'#H0?K"73\(KG./*X:>B.%D59%5]A*^QI]C+4^DZ3?>+ M*E>2Y/PO7*0@;VM(^QQ!K6AA\:\_&QZ)\Y@@4,[C$C?ZT9K N=18%:9G\4Q_ MJD?]W_EA_CM(WT?M283"=X%X)E*H_4VG^(E\(\#+GDGGWA6SV8=Y1@-N3E=# M9JE01MQU-_.[@5$E_,UH9OB\Z)A%A3T?B%=6)1(N)I]J40;L55F0 MXA>6SKO=&SYJF>T+VG2V7D]Z=3DW(/8I"?F7( ZRD6#F'&3)QG[- M#K7?:"HUEBR@]T2_[.NDX4QC\,]MZY")K1?'-((M*LOB"Q?]VYW?R$>) ML,X/;/'.*=!*NH+ -_;#^4$C=@(5,BRL$[=,: (MN&32IXIB;U&W?-U6Q&=! MVHL5#DTKARI[&N4[35TK8] /JM]K0AL73:6/SO4U.$BYKLH<'-<92)'Z*$-> M)L&""*#6;.P\M$]-XP)"AI>N3[ 4W!2-8)AGZ^BY?>Y=P#DR.E2=<+>G\Y:O M$B4K*[NY)G.C5TIG&-Q6X@(,V@I'N1ON?H!LFKZL(-WP,TYKEQV,S(">F@82\@OO2/ZK+OG++C/2$9993O]>-CPL+ MK9*9VP6)R^TA<9;UI[3D3X2$FI:C%=*Y6KN:5Q&V DSL_' M)\[F^6*)*6S[^\W)6WX=D;S!UX9RL'8&+)G=6SGHG&_B"_LSW^="W][3?U74 ML,/6_' \!PNI0B]MX:8.A&X^EO$S3T+.PPXJU-NC)4[(EVGQU0$HEIAMG+"2QJS(1,+V]#ZY"G[RRI6GBR" M:#NT[=XKMRLE-#W7@6UY-)$Z.*>YLX>/)O OB]??%YTT+NDTV(>)BH-;I2APG<[N"XC[O,F\+AGMEX.2QM?'3!NDYV4E05LJJNP?IN+IV7NZ_@I0^^_HSQ^GCY@ M=PBJ5S&E_0.8I('?695P]_,BB"&;JYO4!I0I>!0YX._QU^ RE=*FY@]-7?2- M/JM=ZDLU67C($K-0:MPIV,8X)25P$09LKW8WJ![WP$Z;&*.V6!+$ MRSKEIMZT77>_:,!YW*6+E+9-=ED!@4N18 G2L&D@G4V3=JN:3J%G<.G(<\'J MN, %3;]!HU6_VX.5?0\T14ZU*#DB$YDV"AXX/-06)]]ZWV09J,^7'M4K[TT1 MFKZ.H@QM$,M6X4D/ZNE(*+8XG!2(3M XI4F\M;$3V:11N\Y!=1QI?QB,7S'&/_*[Y:(Z4NJ8Q"(Y7^7*N3*T2WJA0+<\<>F.AIA19[9H,(3("N.!.RN/FRJ,:<,$E 15O-F=6P4^W[]=^N'N>93$ILL6, M"Q=J__*VK10N?N,)KQ6/0!EBJ(H&8OE2QEI20ZPM4F&SWZ\KF=TI((JE<1X. ML9>Q$4($M_@).E[)F:PT) MZ$X@)G)U*VLV[T.5F#)GXDK(]<"<[)C.1N8L2-MF38<1_2=7<=KK>:PW'+;3 M9NL]IW:^*4A/0H_1F*94 QFXU1G'XB.<6WZ[]-O]S>^)@&9W^9X'U1/BPU,SX"P'>I.'(JU2 MY-/4_&_HJMR80-[*2;ZH"]O3]=6$(Y?_YS*XKZI_@)-9:2(@9@HS0F@\<#QC MIOTMU(7#EZKQI+\L]043 2H/[_'$FB#:E2B?8K5;S9E63YYUH/60(^)BQ=FT ME47AG!=^(01<3#69DNIL\KM;'H,R]CP^2-L_;$NE9?&[C/,H7D6-)V1494], ML-#E]5@FS^^)%H.NLUZ:-PSZ&&;Q0J'[*L\]&'^;\O51,S'E@0YW,TI6V;TU M]Z-R,[!)&*2+M=> STK/I2:SNYO_G;\(2ED$_P*)L9SE1PQMV8N_'G2E&'= M;_[K[+J+T3 U@:A'!Z+V/".FBA_K&TY04 A#Y?A.,H^ M@LCP 9+*YQ[&+>T#8\>1,ML8(RCIA.:&Q.ND%CRGW5J(Q?? MW 9'X;P75*.!AY_JZ#XZBO?'YF9'-_/GM.4'Z/())SI?^A!SC[/@DIJNBI=$ M.!$ &:V6V87,THV*5R7+I@@,'7""S2N--;G[*B_/>J :JH[%WY'1.- >)5P MVR/MZ,ZKY)N"->V_/OAX9[P:<1Y"YJ$R)<0S!:V"ON9Z& ]O=E0VYOY&%O6"M4%PNN[7 MPO2MS@F,(M(;V_2!N_AX(8N]JPH/)0&GUN\(8E >B> %IM)Y: \G\K))$4N= M]$ \PD7VYT*:1;F&@%7BTDUVMA+)'3-+. 3-#&EB'9>^_3(;EGF(0LW.5S9* ML7QK&+&,MQFG&DM!N%V)QT6] ^YSGA)XLO3H.%;S1E1%78# MS:O-E&_8VTD\SKN9((2EB[QC5,DI]C(#2@,UVKD3S5=IB^I/'2[]_*5T6U]? M\6SL%8RBNNDZ851_]LJ(HII=$_4XVF2DLK /K!6@"U()PA8#Q.^=JAY0/:Y> M>7Z)3#+A;M_$68D/_\NOG+1:G<_*8JX.#LBQ# MX0,D2B]T%MJ[Y9C2]"))2 M)8]1=75NR'I>G((O_HK?;EK>,.M_K*R]IPG<1?:ENA3 S-LXZ$)$BP["@1UU MD6]%=ZI@6\7[^G5)JR8)"*B0:)YGJ$WMQ6V?*@''JZ^:\H;H(B6][%.2S&3\W MPD1K])PI31,H7)J*=$NXKU$ 2G0C F3/_)0> M-$S]*W.:R)Y(]KE'"ACUF%)"DQOO&;_7;Q<37/_['>[_NSX-/0MH?"01< &X M^=ME&2.72\V2S:RPC@0U$D1..Y0U@:\%&Z33:?XS,25X5EA2'T$&7V\:NF+KJ8G:F&)['FZGS>7:7S+K2M M-]R#>U5J/D1E!\JAG$).!??ME<$_2WDZ)K?G.2UJ;)YU!0S*2 $OBMWQIJ$6 MCD%UH&9! 8FIU^.>!(]]X")(9\6=N#GNZ),:?%I!E<>4 (6N[A !9)Z\U_'4 MN*PB&U[Z.VET4/D1D18'/+IKAE6E[Q*=N>J%6&[VZ\+OD#F52G M@['GIN)]#M>^&-\3#KSDI,YOVI7WM:#CWB&S;:P'A_[/ZYDA,?ZD7J>3P0+Q M7^A:B8!3P$;:B8+F[Y(J?WWTQR#] 7KUGLG"L6NRI^'X?/)W?X>Z<;_@%0GX MY(D6DAGF2N290$@CPUO%B6F>,L<0XS$(*_QEW5[4@#,V[9 M%C%(76I<'IU@J%AX9AAS*]K1/EBT#7'U1?QJY.;Q?+TC+0JBG6^K86V5-0FA M$=%D<^0;?Q;''='K($BQ^%;R"]EXHVX-/+R)/;@=28U_GJ>5<%MD#7'I&^H' MMK*(S_ZK^Q5#QLB$C*/\ IV1@)@UCV,B()G[[@U-M9%](D# 4S&M?*=U2DSO M"72'RS;2Z8T%82!D_:3;S&9\723[D;*Z9Q#ND\.K_F=?RN[R#Y7BQ>:FSB06 MQ-])?,@RW\+]BC52:7P/LHRY=^TU.6\]F:KSW-Y6N\_IPI80S$?,,<\,8J ' M124$W/&6N,S[K2'EL9UXW]O#4@'6/G2:498SQ-L6Q;F2ET MI]BV^$7[(V=3S_BIZ:]%73]#EVA_%%X*F:$?C,Z;$0!]_[L]=$#JE\CKQ'E_B*A^M1,4;XIRQ$JH;U.93A] M][#;YYBXGO/2$SJ4&;&JF>([#?<7A.C[G$0E1>-K0@<"Y^,>?J8ICSHFFZR. MDGP7Y;,XKS(0WL2)UQJR4_VHQE!IC!\G%KR; XY6FKZ#O M:\ ;U-?0EZ>LJBUU!+3JS:39IZD';CY[%Y:L/1FI.IR-&:T^F:V -7$%7;.R M\A:LC=!XI4L_JT,6=[MCGO,F0C>W,2FD?^=D]V M+@2YN,F'43L(Q:TD?M^\%"-'/ABR?CTS:'O[L?Y_)DC0\L\X-]6!W 7[<< G MFHJ)@,R,WU?HB?F*;DN5&"W=5JQU+794D9MG.#W Z)1H_CM6J$+W.%\AZ M80AT6T3AA54-\\8S/COCKQ(:$B"CZ.7FC9200MTDQ6MLU?'#NPU M#S3-AH]T;M=K. H :STMJZ+**3Z$!56$X_]NS9#O*YS&51/=/DI(&H&"0(^FI5C51M; MVH]2M2^#"D %_>>?&FM(_XP#F(9RW;N@"UBE?M46H^*:Q5P^Y&DK(F8UX8)N M$,-XM;:BK$.V)-S"P6VZL%1M6=VZT>5P*Y=#UP#JI4ZV^^72I^DO?K&5N!\= MVHU4)2NLND6RX&*-4D$2WXQF9KJAOR!81P,>/0&:Q@ ^[A%JZJE^9Y<]LV+? M^01EX>I1:39^#'-.237A\F?35Q*5!<$]I_S;QRF64A]:?N7U@,T9]M-88(S/ M1@]"ISY4G9\HNE8WEAZQKF[-DE9C]"HE1*J5[8V>5\P##9$7S.P04U6PJ41\ M1,^8"+K\@ N9X&L^-XZ4A7I NPZ%SB(;)-W@^:;FN. V^=A9HW49L<./8O<- M2PT8WW:?*Y,[3G!2T"9?/H8::)]]5@3F;>P4"E455NZN&'V+CZY$4 !%I]EU M+WR2D4.5\ \HW"V9F%?[32[@%8[FR4136SS%8F]8ZZ595_/ZZ*P9KF0#'_L* MYVJ*9P'O3-T8M"3B]D=."(C+K\>1$_ N;*/"H6O5H-W"B(#HC7^4% <%8[3Q>*@Y3G/='!^IAK\# M](?_6C0F EH<=8F ):]_5#QGX!F) "#'!('1*X$(X/_M9BZZN;1CW#@2DSR* M/.;Y1\&S#?P\$3#0444B-F*!ESXO *H'DX+*=-T5*ZUC7FT M 66SLI*(NG_^BN=Y V^2&XR8/$*(8P 2 X<0 9TB=:<72O&G#XD GXO*S:36 M*@\2 >AS;^^:XVS2 H'[>C[<1$# J39!CM14[9:TDQM-ETE\^"R/". JV=AD M0>YMT9UAKO]A!# /G\_T8R("AC0Q'@2Z+2!NF1.?Z MTF^D#ANH!!Y]S_JG"?) 4N=^Q.F1B*]L,QH')"'IQ4_PUD?X&Z2HG#RW@^=% MP;$_MIO^<#+RGU;2+[,2.(3GM<^8T)3P.<(($1"A\W]R4[L4!1?1EW![AQ_J MTUJ5^89]5&B1@3I"L1I-(6L6%NYM%))E@.B?$Q6C3N!V,J&[,5)>6T]OZ_[I M7*;]HOFQ&)(6N($F@=.AIR1V(+<(#)JEQT4ZVCLNH&ELFJ[[C_5&J11#,+.B MHJHT5Z,-;_"'A0!65TLE2=ULBI,F A[%?D?B-(W@V*_ ^00_6OB0 $:"P*AO MCK?][7*6/5Z<%3K ?%]#D8:T8K+\A6+R@W=/[]__YN M"+"_+M(+_XNUR+_YGDZG]=?@>L"*E]II+CT12+U 6OBV/41 N#XRT(_2YRY& MZ%L2(JB)%P=N17WE5T6@]$/M[>4++TD%AY,#O,/V[G$W_OGHV_^8SS-6UO'Q MP$='] _ Z=$MO_;2J5>_FD\9P_&_B2&AETG=!*PFK5@2TJXF I ]A#MD[B$Y M9U6DM3-PAC@CF&.S3J':I(!ZZGB*1R[>8[7Y/^C7,;2/AUBAR@8BB M47?(7O]7$NO_,L+NV)Y*A?E% B,VR52*:ND0+_PMF+Y!B)+N#X6X\/#I%W&7 M\RBYV[T%/8O2=IU9B(##&]U$0,['>ZSP^7OX6Z0HZS3/BZ3+H?&WSH+B:20%4,Q\W\ M];O:7&E$$P-V:RRE*44Y"RJX55M?(5\=Y_8"X02@AAG#!M4!5U-JO\NMF3IA M5<-$+V#_K_:N,ZS);4M_'(Z" G+H$$J0(DB7KB(!E1H1D1**@(AT(2*"04H MI4B1#@(*1XI*"1$0HG0I 4% .H022.A(">;' M^K-_[+V?;Z^U]GK7M]=ZA[_J)2.E;QP6:57N8Z?&L7ZXXE<8CBZZM863G>A& M3&R!D,7H=SKQ/O+G$?^!E5RE?M7[M1H/B\KNV4Y43[X]=LE8S%+.\>9^3/.% M(_=PT1UY1STPOCK?OIDO2+_*]K+7)B"\.2W9!-XG_U8F&/YK8"1"-:..*4N* M(@V. N]F_HH9,@^^?5Z3%?49.>82_/9LXS"J^?-R,6SWE+6 SO=#0[\ M"KO0M*J*R1/=6;92Z99@0;NYA*>ZV+OGDEBJ&L*]2E2:_@NGOLUWK%)]7: J++0:'!5L]@K1:@S*2+ZG*!>?6338>P]Y/(M6!$L MFVYF4B?A-.#6\[P#ZS2&94NP[F80@;T=$MG(NEFP]$#[2.UF>8X,W0W83^.ZOCTXA87J&09G2>"B M>P/D3VFO)+R6$AB@]C:*:Y]XGL#8YN=04XCYS;;[S5*$(7.-4I;VYXQ/[J2* MYIN?;S>?4,++/^R(\,_C6\G6CR-.T",ANU3OU!FQ#;U':.1GAZ[[%R>M5>+?A^S:W^%BAQN7\\KJ?YL9CME).$8T5C^_!1 M<\# D21G_?)*#D4QS"T24%#.<(]\@1I#?QUY2UO&F_",Y683&'#L]SYDW"?6LC'BO<"[YCIZU50[NM GDQ7MB8)4L"@1I1PIJ]-8RQQ YS ML!4NU'K+=+2'@LC1I!,<,PU0LX%ZHQ#N$5P[:CXI0N*[A"^7F-:J=.OII>BG M66]"N4._X#!M)G!HU+>6) ^05:E_"!TSG@U.R3J;<;;GKMK<+@S^]AL6G2*M,2=JKJ;E<1R M&YTWQ8+E-OZFV]!Y,DBW9K*@@0;T/!\-1[J:V&([/O:@R ^QT F6*4FT_7SL M1?F90= Q]9PA_,\HE_::1U ,]UGIP>K3QEF ?#M;QD#W&WV:7_=B$ MT2U<0+J_M]N1[6ZXFW#'A'"Y5/9Y9YFY2R >YA7^>"'.X16'$^07_N7!NH/W M]R6C0A3;1(1!4Q'-JZ(81*'AHJY8>(-IWK'K@9VA8X#G59,+^'W'K83/+]YE MWFY<7:;?T4C#7=#?><A%/;3\+V:F0'2CMN4T#4I,P-*#BJNFAG#&P4[(8[#;3J>60?3G*SPU9N,+A MJ0XS#O]\3]K%]]&0%ES";;Q7R=>>A]O_O4@(N!GR2P>J\\_OM3^5P\\,,BB1[5'6#8FM%=X$)RL:@R&%Z M>G+*\^J(S-=IXR>+)WT;6D0N^LPXQ^[92B\[X8NQ$Y23FR]JPVJO35$?&W%U M*GLS\"XRO%6?V^&_L.W@0=@ @EGJ0-_VRD>IGMD#LFAOOMB&9JW M#U<%7 )YF&]%4J]5;U1O*S1MIEIM;B1HP]@'Q2M*%R49HWWG!FLRS9Q+/CFGDA,7[;A&Y-[@\D$Q:)J5DE!K+N-C0 MUW7>15A&AWEC59JAF2A.(NJR7-%%B!!UN2&=!CY*35T!/4X0P$2%C_ MSH7ZI@8-9E?>BJZZ*\^V3_WBW;W ?, 0.VAT[\-N Z5Z@H*'W23?2#NG 5?K MIVQ@H"K#&TA72%3V8VUSA/\,QGWNR4S5D \J/T-*3S_V\E-+6**G]-88#W\G ML&V[!V:LYWJU/%*CY/[H:\9H$^Y,N_S0 #NDTRMDT2\%7^MZ0]W@+#80!8DR M)0AH'2G0B/T(VG]T*(O0V?^$NR'5!?:9^ACZ@YQPR*)KN1JY?%RYUO1@:.L- MQ)4]VJIB2NZ<51$K1L10PVSU(&)27VS[5RAW"U)9TDRUA%?=K+J+Z'/D?B@? MV;$(8=KF9E%I)G3-H\+C7$AV\;B;3YE]LT3*YW6+*I%&VX><03+2"T'X@XFM MP2]P>QI0WI1]_!\;[HK.GYNK^[-DVP8R-R=/ [Z:I]( *&>#3'T!%DY09*,X M5Y!$^C@/,,"V3)",CCD0 O2@!G72!K0+?,'][<7HH :,_J#B%;E(@V83P=O5M?3 M)[[L]8,=5N EMBK1D126+\T[;L84.3AW,A^$*F)>M3=D5+Y M.[O1G['%OU.(G]$Z$5E MJ3TW8H6*)BYH<+6GV$2S9&]X_7S#.9)M1>AVE'^!T$3A=Z^\0=P2&&O,MEFXO M3G1]W/(';[[3LJ/;2U [DJS43P/VS_V12_]G[')-G+#^TI?()MAZ,!I&Q_.L M1J7[+2/K5*)I!J][@;)RGMB"/I.[YK[OAD/B3WYTZ2]_ZOZL0M _K<#T)W78 M*?G)L89I]G&&?LFN#'8>:N1W?SLF%>.2,6GMX#C1O6R M[.D[0DD,:LX$OC69:=8A-13K$G;")@XZI*@ZOO[ZR< "U/I*O.VOJ3V&O9I2 M LO9:W078]XZ+6\2/%T]^0!4OS>*](RPM"E;%P5_R)ZJ>?&TD#$U>8590D1_ M<>_J9L/>:]] /Y37]GX+.? H@E?U^VT3X8ZIQRI<[]\J6!<#"GPR)L/U>7AO M"'C53@QDI%$].A6"9%]M\/;:0_<'"Y>J)3YY5[R3!O+N+1#^5!O^N=@G=BOU MMWNDGJW9_GCT#']AQ,6<9]C? M'ST/;@X+1 D;[#F3_0H]CVE7$UAV:PPW;&79+E*GI:U.#SOG%7JN,]P_.965 MELX0=M[TDD8SDL43.Z$_JF502DXY&"]LY/#4J B9PTC>_Y$CRVZX2 M*&#S;%'C]2QYBAKQ-!MZ8%5),88UO4L>1/E;E]>#W]AZG;M]=W+*VMYAXF(R MKBM%U2]KO,6I/NNH2E)WO&4?3_"-(?^\J%QF$CCB564EDF?:1@^NC78?-6(U MCYB(]Y!SB0&OA5MGH[\NSB27&*B7$N7M*==&-EZOJ/7[2-QGWW U'#-KBL.TAJJ3KH87NN^93[:7 M67>$'&F=O"2H7*L")%<=36,KLBF89,!Z+I.Y9AOT"5O+P;!24Z(@-%D2_R2# M,+S+_ZP%2!AJ<;J\]>P61)I5?49YXJD+)EQ;D+S]%9.!Y_#1TBMPKVSW4LM& M1 AV^]4D0>4C? 85U\;"4DX@% MP:/I5H%-#-Q;TL8+S[?!Y#+NZ?J)PB<[@S^H /N.F@+$!O@R_IU%;7EJ_N0$ M0MQ:(U3T+DZRH.>7'+)6ZID5>-.G%>O#)F8:@R]46<3=&U^[GQ"@2S\_"DE/,(IVBKQ=FE_*:-@P7,_/8UIT*G-$M-K-](D2T5AGP@GSDEK^<-SL>4I./Q MPLP4%2*["'EE@7BCO^GM[YM3C:6^KQ72_>&R#J9"*JK*)GOATH:]<[?$MW+" ME)MS58.1_^F/B'!'\P41HD6N.6KU2?Z4?<+%[=9BW]\&UWTJ^;NZY_?C/H0% M7/9/R)%X9=1-"07('S;+&,(4U$0@:SU+ UWX47J@4U1Y#G,8& H>G-PID<[_ MCP<:_RI2/V*Z?Y8%^9U[C@8,M/WHK/HWL%::<>!'CX+]#<+TDV)R7%L>9YEH M=MZ^C-=Y@WL^=TE!?#+@-CE^X:,H'-+J379R;;-]2;^'.J^O9V MLN17'$G3N'9BN'/CW4.+'<)7PG1].0W(6\C#OTFI2K7W)MN@VT-P@7D"JU1V M4F3/\$).<3O1&]I::_+] GIC]]AM]X)A"^Q$PE+F[T94#\6O@.(;X5E[S^)S[[>(!80Q[%]R>V6H=2R2Z(YR:#K?6 2= M?EY4/74HYQRLO5DQI,5#JAR19VG/Q&E7:'<+VON7>U>S+)W(^?4.IUW%PM;' M(=7G$4H/8<\1W2TX3-Q.'3VN3R6_MAU4G1O0'8*\K683-(^25F.V7TL78QX- M$N?41%R;07<:M3^4Q*])$<@[/=[Y_?=]D;-0^XO;C@8>5_PD4:V7]2J8YA7> MW(!/Q8?YC;QX0QTQ]PA5(/$F/H 7CAG [XI6YN[Y'9]0F,U""\0<$XC1:HYW ML3A1:/7%VYCK::ULX-8R,J][7=!'P[3 :[%H=*9N9TLKNN,A/$'K/E6IXM%E MHJ_9%8:6:_#<"J$G/47T M:$"L_WG:\WID_V3N43K:J.C>X(H9LIVDV#_K(F;J:8QK>U M$0==A#-R&NH#Q\32F3M=;AJ*/GULF1V=/U_SZ0=EX>9TMD"I8U[3+@U@&NE[ MN>48/D_BN3$3M'2@:O09$2:J\B.9' MHV2.R7F_JHM8@2)R5XZXQ+KJ."B-3?+4AMU5>?J>YX*&;"G23O+ <>&\%U(V M5)[Z\N>4U ]V%U'D)WLR/?!S/)=(36[0^;^:I/HK*@9S!1]_2SJ*(K#9RCML MFPZK02>$+\H^2]'X+K17L>];*7N:2?PL6V[U\I#9"/%J1^14:-<(#'0GXQ.A MP4K G]EG;;<[F5MRUWK=3>4*.JTMT/6FNO/QN[+EY,1-Z!5R$LGH =+?0[[P M6GGNEQ+E\6[N3\I=)=9@%7*<;P+U:'W->F=CF-9$7S8T^S MROY\9C]J$WYZ0;2?YV98P&^6:M&_@EX<%DQFR*=CH\9$LF4N':SD MMQ/9*4 _@1 .:V?AH0/KNLNHU MIAQD2QG)\9!7D1\Y3R"8 7]?^I#!#!M M_-\ 4$L#!!0 ( )*&>UC&YYEKX<8 '*Z% 6 8W=C;RTR,#(S,3(S M,7AE>#$Y+FAT;>R]:U/;2+Z8J-I;-T613E2%D0CT)9"?,/3O/ MERG9DK$FLMJW)$/8O_YMR0?,P6""KDN]-$I54L& U+UZ]3JO:[W^/XW&<31T MH[[OJ??G'S\H3_A6D0W6NQV,W4A_]. ["4/T6!]Z%KY33 M:FXWG7:[V6HT#E^;9QW-?DE'7=79;.]NMEOM+=7:[3K;W=:6^O11_?+'^=&O M^4^_/3LZ__KI>/K:3W_\]N'D2&TT-C?_[!QM;KX]?SO]QE:SY:CSV(V2( UT MY(:;F\>G&VICF*;C[N;FU=55\ZK3U/'%YOGGS6$Z"KH>O1W[JJO[0C1,__:^-/\[?-?;,3Z1!&OJ'?[W>G/[G]>;TAWO:NSY\ M[067*DFO0_^_-D9N?!%$C52/NYW6.#TPO[IIOGWG9[XWK@(O'7:=5NOG@['K M>4%TT0C]0=IUG.;NSLUG<7 QO/E03W?7C?W038-+/WOZP^\VQ-XV;Q^9+X=^ M_HRM_?R3I?>:7Q[/?W6@H[0Q<$=!>-W]SR,W#'IQ\)^O_O.]'U[Z:=!WS?\3 M0]Q&XL?!X#\/\A]/@O_US=+,0\,@\N?O<9K._D'J?T\;YBD79JW9IP?3I75G M%.D]^-KS8.0GZM2_4I_UR(W,*_-/LE??>VO;/"C_\FKZUIX.O>E;/;^O8S^9(QSC:W295]M/S%UT&2= +PB"][@X#S_,C\P/_\=->N]4Y>+V9_>!T8??X MK1_Z;FQ(E X/[K+>0QRU:F,CLR]W>?WMK6S]?IKZ<2,9NWW#L-U&*V>SQSBB M;^2&'S^RS^=QQ9T%M)JM[?R11V>G7\X^G+Q]S_^#%RA*F*%YX@%.OGZD'M_ M4\#QB+U1OQ=P\JL.[8WMFR_^X N]4:OH:C>_(J3T#5F/BEC@AS/D$O\H0%@9 M<:_.WN%82!5R?\YPC%C(^AK 4_[T1Q$K_ U P>D)?[!<2!P5+R Y6K> 6XFX M.33E,]ZCI9(&#V41[W M6_IZ&O/+/E@SX .)1"V6G*TD)Y0S^\]=2LW";)W=G=9^^^#'Z?8#&W[DU0]$ MV_!&>W9-E?L\ME*TOR\8;V$=U!SWMI>S5I9:#C[4E_Z\2#45W,J M/Q@'7-[]/!X]>T6[F3WE=I!Z]MF])^5W,8C,:Z9+^=_\B^]=YZ#G]K]=Q'H2 M>=VK89#>>^D/LY(SCPY/@[B1CD=N>"M>//O(O-!5P]@?_-?&3W^=Z_ZVTW$Z MVZWVOA'3_SK^_*^3XS]?;[J'BS.\+P 7!-G;W>_L;V6T]X)D'+K7W5ZH^]\. MYN?DCPX6I[$@DMM+=#@Q.U^*R<[ITSKHZ=@SHG@N,@Q]ORO/?.%[:A[4GEV/ MK8,'A7.HW706@+^59*C84;4?.*/ZNEEXAJOLJ@=/MM/:./Q]^61+7>O"#%JY MUN/RUOK(JDZ//[_Y8 T5S8FW'Z?BK?7E;)K_LM\=QW[C*G;'RQ:^1=MRGN". M3S8M]BE6/K-FL4^OM43F?F15)T=?:\/!#J7SF+"QD74ZM34CF[&5A#SYH#ZAX_E4."67D11X32O9(T#44 M4HD!O$=6M7GV6;VUY]ZO0<'&6>>NVH6^]/6TY[#=;\PTH:OOF@2K0]GF4>6VBP;UD5S7R:AJ=VTM >>?@T M"7^SDX(?[*'A$[736U;&U+?R!C!+*/@D 66'W,P&SMXIBZC]I.JQ9JU/WRT+ M,RQF54?O[3GO-0PV.XGX[IU-8EXJ%<^/U?F9.CK[:%7?PZ--&EM6YJEJE4FE M]9\GY^^51=[&&F+43J:5)$*/K*1@W4!D?_#62L;9J[,"LAEK>^/P\_&GL\_G M)Z&@D^9*-M6^BCY'5-G?THB8XF9PD=6 M=2PFOV'O93ZQQTU^W,<3(^8?DT:G;]6Y)*:U4WR6F>:J" F/SFURDQ^K4=BV MLNGO\LI(-BV M#%/O":_9P@:43&.^.SFO82+L3P=8R3QUGDDX8^UL',J)@^U8&<0QJQ+4D+MC M90YA)QME]J>@/J@=*_O#S:K._LPQ-MZOSE M_//)48WP*./D[),)9E&.8Y5,R'^G%@I%I#WW2@V+/K*JS_;T]ST>K-TK-9?P MR*J.Q&!6[5GIC^R5&D%ZIC.R9V7*0!H)+8QV91?YV)XTV]/JQ,*JBKU2!X$\ M7R/++OO:LRI-L,:MMS!/8%;UMDQLG6?K;_$L6^NIEW.L-21\TF*7P:Y5\>7L MZ8]_^FK9)'0[CR]53KV=M3YR;:@48:BH4TDWW$*@LSW+F@^>T)X63E7,*&A/ M_EWL7;9'I3S)A!;FWC-3I\Z[6Y((>3::UCG&5QYC_L4)\ M/N4K[MO4#O&$MC1KC:U9ZU.JW2S6M]#7V2\5MNQ9NMTL-;1FJ>L(]?CX)902P']F 'EA#[G\ M>WQZVMM0.!7 MSTZ;)*EC(W;'1O9MC(V813GM.C92QT9(L9&MEHUY]&Q5.K%(!SWBPF=K3:U9 MZA,61[98^P(VV:K$&&W98NTSVK)523':LK5Z5E)0C%><+5:TGY9MX%1+(G>) M,OZ15076D/!))5EB#.0Q O;M$9MRN5!'M;=KM;>;*PP;6<;%4V=;<_14'[T)2R M55G5:_M(;W6V5AF1D&=U&60!+T@#-+K>9AI MQG&= XOVU->ACKL_=79W6OOM@Q\^]AWS9'LW[*K('9DW+O%9>]ZX4BXQ-KW@ M?NS+&;:F88[+_Q&+_;=;PUW8'14UPVOW.MD)G]W=YI;NS_/Y>[T MLTS&OC9;FV]KY'YO+$GK6W)U]M+;,=7YAP^%9Y>>NT25NZ]XZ#?':QSWD3LR MW.C>.]9'N.YETL(XI_\Z_OROD^,_T7?EA@5>ONJE][2>CLSG/U.JE-B;ZFGS ME(NH^_Y4+(%4FA1?,NM"?_?%?V07ZR_FK_8#Z M?.$KWEB3(2,!VJ=%C\X^_C2$\WPC!7IE?]@L?-!/)-]Q1)WA/'@G%@!DQHGL,Z M:,3Z([BEC34@8R\76 P) MQ%&"HO()KR/L)D2W6IZG ;<"L7S&%.@(Q2K:WC?6 M64KP)AVV0)1IQ]XP*M-0 Y *KCINEA_3G&#X/4%?]#QOR(L=(/,)] M(4;,0Z)5 /'T>+D%P.HO)8N*5?X,G'F1QO/&(<',9,6:%T>"R\N\&10?/V#> M0&)N$K!Z-V7H:0>>J-(#=:2C1(>!Y\(E.M9\(AK_?_(HA?"3S)O,J3?Q]&K3 MO,J96OJ H)97*4I5Q/\&+!\>.E^LOGA)2W!^H;1/)CW>!A &@1<4?Z-6AU1D MH+2:8UH13W2(_&<"MC ML0]B26$EBGY%W\2K(!U2J[DR3K59I]IO0 KGZA9X;7ONWF'DYFD=0AK\"^@[,3,[WG M[![ _63H@4ONJJ'FYB>20U&K4JF$ !5*$9O%WZ0+']!;V\7K+74U#$)?!9$: MZR3QDR3K9M4#]=$U6P[<<%7#ZR]NHCQ_$$2^IX9^[ =1\8;MQF%3>'.Z8#'* M;>WV9"=5S(T0;N*)CC@2S)5=^CVK._WOKQ\> &HW=ZJ0.!XA2L&U,0_40+3- MF#NSS 902")-=$.7N0:5)$>*!==*9#PX4' M.F6J*A?XI'?DSL*AU;@<#P24=HL/*!$]^1H$HVPI0VO9_"[\J">22[I6G$GQ M=5Z9R$>!-L_2N$!"];AY#:EX*+N3<.>\3;#$&/$7P= MS.JU9$>*B[LHM'F>A[TQX]/B;W0&25\*)O8#(;Z]HD-\JQ:11YNCZWD%*:22 M=QCX!#03E/)8>5/?07PC5W3ZL[3R3C!ZLUR/-1]6S*(])#;'LL_%@RL+UO(; MA[]DN4]JBA#4QLEB5X3Z@8L*!NH5K?P"H6D2-8[U)7XZ&MCA4+Q@ATA1"BWA M"1B3S1R<&^:'^FJ!RH6:X9B]:CZP,6U#DP$;;AUDZ^T\,LW3:VQFW MPJ99$OOQ>!8&W [ .J)G1$?Z2F;Z"8;+F\V<Q+)9?_(ABZ:/\,EP/V@;JZ<*E*9\5N0%&Z1T0#0[N$K66 M7*("S?R6_3[0+6>P73N#P[T>&OV_Y@EO.PA?,_U^T0SC],GM0-TC-*OK3 M3ZZF"^SIT,OJ[3Y]^G!2O(>UQKM7";'B*P#7(L1O)Q^*-^B>3X:%TBO>YEB+ M#%\MH %.[Z]%@K-WI;QX%2,4;Y.L1P4C%KZBA>36LK9P4-IB2X"VZ.P]$3KL M ,.& ;S&U6GNU:;\LTQYD? A3G.K$GA,XW&%G#;AY?$XT<& 8^4+/DC5%OPZ M0$]YCD,;*YWCWY@/HL3M9T!^HMD7G]> '@L^*>#@<,LX>4D49,S&80V-L2ZE M6)C 4&:M,8'7))1P?#?A.*(^'A $JY#[X821&S.R@NUG8:#\:.R*@(34D7F0 M[G\C@-B@>G+,)L:R6PH)-CRTI7.@>=CPM;@H5UQ(EA.YI).[ 3(T3DVH%XC9 MXN])UI&><< MWOL-K@TI 0*J2-')& N&:UYG^+JUJ_N<4R[>_S6G'*01MIG6=) M/Q8+%1]8I$PQ $IIYHPHA)@>,)N[(3N0#(IIM+Q@/;E"2!1_)60#^:SR.8BN M/6]3S*E B-29[!2UX%#7"F&"B BRBF: N/J5RKL"XX^R<2ZB-'DEO6@F*GY0 M%1?H)0UZ(4]_(J2%:*B=%7J!.0@".Z^(CU!C5"QWI'\DHQ]#/;TT(XBD/1_8+94">>Z?U=^%%+/FF: MG-HXA&-U0.W*!DV7(D(GLI/#PF/SGJH ] =UNEG^T@)))1V3N)U!*8%0B8N' M@2?JE&M%]!(@>;M$-EC)U5!TA%FT[4;)V]TI@NP5\I;\R\^EX MTL,>()P)?-%.RMA3-,!NBBD\&@N1&(\JJ*<#S92*R^F@7K$^ M!J/HRB''^!#F=.PQAL+B JQ*]/A? M!_C?-?:KZ;!8X+3$LS 0\DG\BTAF5, M:?UPZM3>BO 001O0IB[A)#YICY!4 M745(#UP(DO1#G?A>WN],VYW3W&*DJ?,80]4V=5%*O0F3D#<9_W*V"JZ]HI9> M&:8L47C5!4.6%PPY35#E1$ PV[9(2=$E-Z8/@3^4[ FO"/@1&X\@B&PT[TPD MPN^2J5/XXJ\"_$P3H.S(K$[1,5UX6(4GN!=T^H20VH3@]_R8X7D:+/@!?,25 M,6-XML"L\N=$HMHIQ6A"- 8SZDV1@'PZ@H-=5>.L5]5ZBZSD=(!S$.MVWG+- M5GP[+W+YTG.!2O<8Z7S@%H+(ESVEZJ-+/ $,$KAL#B(X)#@!=$I 0VBA3(<5 M0;#BD8_RD#K1\01L@%!S2+1[.W)]P1MA!!\R!^U!@+,;'HF"$80IS&:A MGG-/3PA'C5+0W.R+SK"H"8S%)A8D>R@:*3\#(C.NFYMY/RH=TO*3"$W$ -Y% M@040(@!0YW,8$,J!<=X/8\(S+O0H?/!!3-0 B/6/X*'?Y;)>J?*9FO$<^?C. MKC82@X!1A0'= *&_N T#=%F%RE$\S O+?A0,O^(T]V%<6L.LE$5YXV.*EF]C MN+?!*QH5/F5".!(-38V!@T;P["GT/M=H-$]2OXTC_J3/L'8K$FYD68NN:-P; MWF!.IA]"EU7U+.I[RQ=>^FI^OL:]6;?,56AH!#DXI<:.L8"'I->+TD)V(K%C MEO2O2$@7*.L/)K0L2/$ORO+MWAST0[(62 GUHK4.+KLL@1C#H*4LN+EMVN$+ MK6@'WG'AI=K4L!*\11AXTBL)E06 VBT$Q#&AUZ9NM:FL8&+TVL#:=%>><]UM M\\ &^J(1$8AE)!6(*8EF5!WEVM(I7ENN8*(ZW5U>"&L58^$,ICIH4_[]X 1M M9->4,J53!8(VPN,S*RONA/HLT'I'T98X-9A26U+/BD7P[K7H1B->U6O5RH.! M8C$S"UGW'#'$*Q%NT>)QKJ'L,Q!>"I?A!"@BUC3"@DW=(.2YV(C83:2D8Q[7 M4,3K4I\!1=PA0!%OC@]?CQ]\Z)$;!KTX, ]Y[X>7?AKTW>R!;I0T[C\UTRQA M$/F-X73(@M/L[!Z,W/@BB+JM<:JRO\[L/^;U+]C*99 $O2 ,TNON,/ \/YH9 M^JW.P8-[,I;!.'2ONY&._%M+S%9RL\*7+>J&$JW5A&CT=)KJ43>CP[K;V/2" MR\/7YI_YNOJA[\9=\Z3AP7QGJ=L+_7OOR*<6CLPGLX7L.'D=S%7@I4/S[=;/ MV8Z7'GSK:8V^'X8'EWZ?Y1/-W8K<]2/9[^VMB],*P9^^ZW MACLPNJ;KAE?N=3+CT]V=YM;NSP<]'7M&#U W2,TR^M-/GA['=$=6)Y.>6=>7PBV'-=;WX$K. MWYR7L99GT.K8&EI]K"FU)J5.SXMW6)Y/J\9CQ#JSAECOU*=2%O,<:GVP8X'. MJO457]KSHZ=Y]!5M@V'\(Z=@!VFQ\YDUU=G=:>VW#^[0863(X-Y:QLXC#FMV M,*IU\S?;NZLB=V1>\]>Y[F\[':>SW>JT,K/>?0E=5B6C?W\YGZV*7!0@O8W@ M/?[\IH"[^D ;>E$AWI75>04$GE:&10N0KZN.K0!J&_&%EQI;2U(C)_G=BU2( M$-D""9$B75BSHB5GXN])D@:#Z^686#N#=W,A/F)' MQ+[Y2IU[NTB?(?=T>G9.W52;L:D_OAQ7[:1*XWDN>]Q8#8'?U MH8R3X@XXGUZT4RP=STH0B- M/=:[@R3DIS]^^W!R5#FNS/WR:C']2O?E796N MVI20GZNIIKD\>>.!0HU3=7*JSC^_>7MR^KMZ<_I5?3D^^N/SR?E7=?9.G;\_ M5D=G'S^9SYOY,E"N57O9QWP@5E.(BWDW$6>EB[GWI(NYMTWR,:&VU,I;#+8\ MOJK3,Z:<7YJ85]L!/V('U$JY5LK_.*7\J@R?[T_LIMY7,,IQ7L5-?59G3%G! MTB2GY#"LPX_>U"'+.F1Y+V3Y2GWFANIO\IM@S7_Z.W%?[>8.14R=,VW#=G.7 MLZGW3!9LYY7R\$T=<:UXAF1_K,8">IG+H"0ZTL"]QQ1G_$OU;C%;-.WC-U76 M+>9Z#0[>$R^+D,>?S\G2HY1,,R66 HWDU>94;4Y9*#\J:4XU576+'M5I%6L$ MWYY\*24E!8X\D$V.V::@ICU!^EG!24YTO*HU2HVNM&"Y^BL[RE MI%'JC.N/)(>JIWW+*=\!"[___N/D\_';"DK _Q95;2*[*@4*0A5 M*.#+N_*L_F#ZX"Q[^KR*/OC1,3,!P.IDJZ* ^E"*/P>^4USFH_BHI648J/J+ M5E=++8'FE?!\J&!7=#EV(538EU4/"O:-V75Q4_;[?V !R'4BVQ0G\K>OTY:M M*HKV,VP'6F>\U('66:,#;?JO-5S:%6]F:^].(L/CV?_N?3M? M4#?189"KU->;DZ*6N<(L *X^FW=4V/*!Z_0"')FG&AVX^$@&C2]P)&XWM[!K M5S)(K(MDA7LT!LL*(33^6*1(8XN*5+0V\65P2 Q4)@0J"U'9(534U;)N5A8@ M5M0A=2'A%C9D<,AT>B>.2=!D+E)4 Y?91PJ['3FR;D7T#;CZ$QD,(EO8#600 M68LF<@Q5YN#%CT237HA)#?0.:TV^,$N;^4+7#M?_D#HG3*1>I%__1,QNA@]J M7RR_^!&;A!G=M%-N+'*WB*&=&CZEF$DHUMATZ.!E NMNX<9>XZ=VSV)#F.6G M0P+Y<YD#H282]W@QP;WBD,1OXUCSRSMO5 M+0N72E#!;:UDDFLT-2=Q!5LK60O#6KMFRPYD;[5C]HH9Z0M4QO%LVU"'9;MQ:$HM%NCXL M6QX1.[Q6D8:';Y=(7_@&QI.X/Y0=OTW@N:]6LP-, 10?3V N7WCV*R1$_W&W MEY#WA3+/D1Z-X64/-V%3>(@3&?9:91MF[?#.[M--V!9>;>358,JE/LN$*3[N MF:5OT\ G'#50C/PB//I/B/L#J1\4G\^A&C 3O &,I7\T$,[_T^R7@AO"B\ # MQ)*47L?#JP.#F,*T&D+1)<'&"-;&:XA5WYC>M,B+:,.;HI^1-X/A) +7+]N2 M1QCM5.7,ZZ@I7G^:U3-<&R#SZX'B&*BP(C:SAUSA\&X!XA(S E5S=2E:6ZZZ M'+\"#J4I^FJ?#P.";$+9K)G?V0\G7NWSE,5!9382ME$!]2RE2HQF($J1X>$P M:!B#D(U$U2!S@@!MG$88$^J:89X"U1RK2Q9*NV4K+(SB;YYP621:B_%:=[BM MJI(92KARDUXH1+MC"& 9@J<,9)US1@0;& "#)UK0#?[:DUT@H@D:$BCX::(' M = QJHZM"PXQ7PH7$Z+C'O! YHV&[$&B9BDA2004$[(5#%'#(W*\>A@4SY1, M[I&M(G6DILD4V84:E$(37#Z+F,I"Q!13T<1/A_CR2:"/6CGX$Z W/R#BQ2&4 M94)@5&0P0B>)SP!]Q F+&C*Q9%W#@$S$W8!31JDXK^-P=LX-2$*ZQXM[(RQK M0F<>+_;4R=]4//8?K0S1Z/Y*="H)EGYE%HWAV(H0O*/W_B#LCBB;J"V:J8RG MJ-*A+SS4'^K$5_BD5 ,:[NE-$OS8A,I@WT/2FA&CO O7G(./%SYP WJ%O"?_ M\LH/+H9IMZ=#;YK!Z,$>_VC+&NZU>1D;;5>+3478/7EE[$EA]W1>"O?%V$VY M91P4E#MR-[=R%^I"O76OR[M4!:JD7T07,8BN(%D164&X\?"VQP8OUS3G)T8! M"\RI$WT@T^PEV2T]!6SC#\8LGU,;A?ZO?0]US0_7%#_U^JCXR M@!&!H=)ODG41I:)H'N0-$I']1W/%([RZG1'-ARF> 0,]&%DRQB(^L=\581]E M<7L\J7!HK,4GITO,PTXY"GX>5%^+ASQ3B0X$H44U'H1BR(D!EWL-$@^(5P8#/)+8"*(V:%$?P+MT(8S7B-P!LQ4N' M>+AA9V9)\/\D$FSF<#F*H)$J M4+"P2CC!;QZ3*N@_YC%31W4NU?K-'O\&8]!KDE)(D644@DQXP(>E2]:'H)Q+]D3**K<#9SUID@/!4&5@B!2X M_*L@'?)RP1 4%T3_VJH-?$*()$9!/$QW\NX:-:>WF%BT.39_4R_[)\[^<7NA M?_AZ_.!KCMPPZ,6!>>Q[/[STTZ#O9J]PHZ1Q_SV9[ Z#R&\,IT 3^8M';GP1 M1-/$J&K=_#4K*I"0RV]M=G9G;VWT=)KJ4=?)WG<9)$$O"(/TNCL,/,^/9I'^ M5N=@F3((.MRLJ)OMOC.C0KM3-!E6U!;TM!\E -FE[U %.[N0_C'@IF.CLV6D.FEQ&) M:S?W>+9+C9EN0?(^PTQ_);I5D3%T!VJ[C @W8+KZXNG$&+ECA!*,]K(O<)E= MNJAD+R$- ;W-KI(^<-*XA+*]$4^EPA/>$0_\G@AEB$@Q29\NVD5'C)U;D?/M M(D/G!<;*\]2!ZNG8\^/_VFAMJ+X?AF/7RSHL%E_/CB3_>K;@Z6\T^CH,W7'B M=^?_.2B0@DUG_\[.6@N:-E(]SK_,-] (W6L]2;N#X+OO'5P%7CHT5&C]?#!= M9G=&\2Q9DGKS+4Q_;&NJ3Z?IE)MOOHB_+OTXVVK8,-N_B+JI_SW-UGMP-0Q2 M/V=POQOIJ]@=S]>:&5HSJL\6^Q\_[>_L[A_<7=?M'RKN2DR_S!YD5A:/W'#Z MR0QO?/8149FLM1X$H)-00A3O9/\((8 -*VO2(1T6;\7^&"5@KM\/!R5)"GL,G^R(6%ZH);:T3A%G3>!E6[[=FAJ>[_@ MN$)=8U-Z3#M4ISIJU#48:Z^>T@Z%JNIE%F'03J1XB\9<:WCZ'PP@(OHVZ^A M=)GV,BXF*H/463ZGR2H'S2?IU/JO-)#QW, MT HZ.+ 1:S]X*N4GMZR@1/F"HWCOXL?HT"XWTE<2(]XC ZJ';$TR9(A?EE"B M](L!Z'C\08U:KHE57XW5AU*2T65+CKT%ZUIH[L4"0+2MBAWRT(^]IR8\JM)[2N2L@2,I0=.LA+LNWPT"PHHHL2 M.[RT12Z@KH(NO0KZ!B'R=IIWFA;NS)-(I#K#6RVP3W3 EEB#\' B?_M>"OTN M48M(RX/!*A\K=,B6.UWYWY,D#0;7SRH N,NB2Q4&3S#_E^M13X&:%9^GP]>:DJ(6NT(7 ]?L%KAZXS!A'Y'9S![MV)8/$YZ+Y.'9E4-D+<&2> ME;( 5Q_)(/(%4EJ 25RDM'C8C@8N_I,,_HCUT)B[:0X1+/?7O !_ 9 C/B8$B&;<> ,-QW)MXS**JXL>("WVHN=84"2U Y74OXJF/V$$ M$&R\!&6:-G3]1WHT)IB);9"92)WXD&5;G=T#N%D$U QY1(IFU"&@M^$!I-I) M?F3U/H'Y<7,W1!MUW*M;VXEWB3_4<5K[Q"7ZQ,3#=E6M)JNN)CLP+0F/7#: M4/-Y4D7I*^+41C]34;.02="(_0'Z;0W MX8'J]ORC(/+\*.TV\A^:=W2,4S7U]:?(T>-[+1TOHLH#[1^SC_+E+GT=YSMZ M1G_(@IY>D(Q#][H;Z#R\+7Y9[ZN?NB[ M<=<\:7@PWVS.5/?>D8><1N:3V4)VILAF2]"7&[<>?.MIC:RAYBY*Y?31=YX M1C-_\+[$GMO_=A'K2>3= MJ;Q=NK^WOS%;4_O.&EMW%MBY*S<=I[F[\_-MT7G[LZS3*?^UL7MA6#/VW6\- M=V"48=<-K]SK9,:GNSO-K=TY(&YCQKMWA,3(_=Y8NO^W]\I8CP/P:QZI(Q_UP\U/($*/8GH0OV2&5-M(Z)G M>@)^*C-,^?RUSM-FP_,W]:LBC".KIY$]LOYL&ADM+TG,X#8@#0329[;5H]36 M(Q1@9BM5YXW<:9LZZ5Y#TG \L50MNQ\F:[,:$)T.?8)!CFN#)#HN$',CH5QK M&/E_H=BM,$!=8R]-/,$F %&%PGM%YXM'L"G#Y<7A:A!J5X@ J7FTBHO(E M>.*JQNDJ35+T"((.YS 1DI]3QA'>1DCPRN;1(DQW#4FAT?#PZ-7M=;BE!#]V M07U$\IP0:,21?A@0\LT=V/+QP 3(U<-=,[#8D4Q[N,C'5HO(]I8 \Q]IK+/" MA)#9S+QP:1!MEG#Y U/>[RHL=3$!LX;QN??L%4!>' [(^#(3E*-[%)JB$Y\ MR[WH&ZT'3+192'WQV(V(5: (AX/ 0D"=5A>56):RQ]E>BF( X*)")'#;2L!P M,,H#<(8JH7P56MQ U&@(D4HHSH!6-S"D'-++K"OH2V";6KX M8#PH][P)&4X!+'<(G[M&[1X!6EF,]GH@FQ(*J]JP2/BUBC1CU@N.^NXW@J$" M!'N4K"/)42[:.BQ]'*%EP,\I[8&*;>)U7',EWB74S M2PXSQ-\1GH>:)6JE#*/>EI67;IK9^FNZKF)[RE&I0'P$A! 7,$-=S6*:YF.8HWB M^IP-P$-B--P;)%HL)1%7X]X\7C]7PB2][(-U1P'50VV*H_O3LUG&]42;(JEF M_3B;(QT- @\ZSJ:UC=V"7^#J@>*-\'Q?H^(/H^R+B!).4UQ<%003C!?S^5W9$B]!0#+QGLX%= M$P9(,6KV7P9M('GUQ'(XZ=%C&J&$JQ]"W!4HE.JFUM(/@5N&, DE:]%5,@1! M*KR>!O>BB+8SA$-WQX&>)+(G"AMAT0O]D> "_&SF8:P8S:C3,RC>#\W&4M?U MKNM3B]$A#V-6_/ =K,RCQ&$JX/!([7T$(AX(APR@M%1 71K+[!L'KJ2[6TP M&F71H5F?AUA9&[L/&[OC24QTFA#I''SQ/!1#@1#>KT"_==:9[A'[#! [D(Q5 M0NVWYN5GBT<)XD)P(.Z9]&EKD[D=^$A29="^TT1=!>F0&*(7++6HWJ^.?*4G*<^!1(!]>'XV\DZZMJI: M81LNW!%$_7"2H0XH7HD8)!?!"$=,EU_\0&[.^#C9H61@<<:$41> +# D% :P MD#X788-C *&*A_=:M7JBE8EP5P-"YQPP/"1ZV@AK&B%N OPG\,C[!,';Z26#E$M,8J;E(ECS,Q/1C$@-KLPR5G_KGL)W_])J M^WES3+)W+^:89+M[;)#)RVA9W!04S(B,O8/*.6W:G8*)LW%X M/@P8#525,)(AP8YAT!,=A)4=0I:,%$0U\L.$ET 33:H5QU^\F#+/E)RJHX8B M9*NX5/+5RXI^_\TSD1%*@CD_M>;^$I5<3T\(YDQ;>"T?KDY*>!](UK7(*XZ& M>"/P4+1\E!E2-!0Z?C>(7.$5B8%+"QUB:L95;Y(PRT(AAH5H[!UFY A#?>&] M@)=^DHIOD)9[!-5*$G-C.KSJ7V K<<+H'H?J4$VP^+#Q?U[_OM0IBB3QM[C4 MF$HT-6 :>\(EN%B'@=6W#$8T)T0!@#C7DX@']LO .0-: 141U2X)!M7+KS[ MBN$^\VKWD%A'$^'>#V/2-S\%([AQI@K1'\%N;I8ID7VC)^E0X_/"BRW\K^1; MO7'(0 _ Q1G$!QFN@L07/!"56^@FV4WDX*2@QKYQC>_JI(KK:,#CT0 X; "X MFU]T\9R.9"<9!$>X-PYYK04($2T-)18Y&D_Z& :@B)9M8(LVN(Z&@<]P+G$[*'[>0OF8BSYD[JWL MZ-\EX:+AM.,9CWD075X#7GZ:&&(7"55(;!O$65L#=:2C1(>!YPJ?[XH'K5XL M_T_9'HYY$WH##M+!/*)Y"(@;UR06;GY <(_75+\0RF> ++3RMF4 <>W6 8)G MC\_RASL'OV8CA!DL/-O3.X0112@R)]:^ F]+\(T8=;Y";"#Q7REC( AV6;@] M231"$>VUN@3F[NH9-23"(::ESS>D#RP5CIO@!;PN?013#30>3GSN6$"*.EF+ MOY3,IRNAM^#,"\T[^;*C4((%![=PF[=\1-/*F""C6.,:T#$ZP09.YC72EE_\ MFS@U",@^F"HVADF%^JIQ^LL_9\'M*N3:MTW-*![C>=93LT,V]\:)CH2CBHH& M=@T2E0[]+ B.][+0"!-C2N\>4.?U> %V!$:&9!@K!!#0RF1<'?6^;^X9(71T M?'9KM!MB?EDV/NUF6-E!4\]>Y[F\[':>SW>HXYO--]R5TV3A\^W(.6<5\!53B M(LL)-@Y/3D]PNS\O9(5 $A90@KIQ>/H%+0:VEL1 5I +&>>X!1(*!=*AZ>P_ M,CKT;NJ6BB_U6>/MJZYA M\3&TM4A1O-'V AJ4LAB$F?9\&B!'9*]%A+> &/1+R%!\.FB]^Z 3WU.I5L7[ M R^X&,7W?ZU%C.)=:H$7XW>KB&##D2P64WR431QILDJ(4'VR@!!E6Q(]JTR) MX@-':Q&A/ZM:ISH;B^'H_T1OX\GA\>WF'LK9>*HQ M%+,&'D!I"@QUZ0]',K M2V[273@Z"ZD@F-B/A"H4++/0$H5+9D/QJ.RT/T$" ^_^> *PU)@IS;LV%DU_ M+%(;_?%?F& M[J6O>KX?979&XH^"R$U]S_R<65(T \GGOD0TBIB? /SY"PANWQ@^:&\,U^J MO<;_?>R6M=O%W[+9Z,18CX!/M(8A&(+2M ^]T5@ MO#'.J."NZ(/( M/U*/!2>4C'>/,:C=)/Y"# \B7C4)K5^SSOK#:0REO^JI \ M/#1RTVA7[2K0$WS@,(F_"<,]1P^VSCL,! P8<-ZA@0NF5!/(0?% ' MS28NH]608.C/WO2_$/GA*P+WHF8M<&&7:9$X1(^$3M6_)VY(2*1,WX<8%RP: ML)-;M%U![P'!49-0=MGJ#*V!EETOWMZ7WMG#F!W*OFDU,$HIJ@=8P4)$=<&5 M^:::5]1(\*E1E;\<^),:/<9&.Y_;+B8XF\;I_ZQA8E9NH*]J()6U"\@P=<4N M0\D)1TE#Y8Y7:(2ZS+@N,[:[S!@&&[AQ.&(D"(#<\TVV.9=M$J?Z##D":/KB#U MQE.<^?FC'T*3[Q2/)C]#N-<#!6BGWSA<"R1_6S9(OAMYF^9]RX<'-]RD(TR+ M3G#3,I3,IO(:_? !D2PXZ =Z1',($MC5C"HP5/J*@L4-[)$0K>3Q)<%(VA??H+B*]L4; M0T9OY;Y]78!:%Z"^I !5P=$DP/!+M ,07RTJN1G/B%"%SRU5I\I&]EGCRVP: MT BC[%*)I3J;S?'AZ_&#CSURPZ 7!^8Q[_WPTD^#OIL]THV2QOWG9IR6[L]CI-]:CKF'?./PK]0=I=^CK.?RG[X#)(@EX0!NEU=QAXGA^9 M)6:#U%N= QN)]U"":Z?X!-<)P:0&>O+7>$\8Z<\(;\@+WMPB3%^B)D\!(P.(>4,4\ ; MAZ%D5-K5"4^)YWRS_-I.O,>FC*(@WDQ48.EL.E2\[)Y(6#(LAM[1\1D!+AX; M23SB'0$"1/*LCB06'DDT1N@X=*^[D8[\6RO('O8H*8K:>VO-K:^YLTTON#Q\ M;?Z9KZL?^F[<-4\:'LPWF[J]T+_WCN9>1E#SR6PA.T[>]'(5>.G0?+OU<[;C MI0??>EJC[X?AP:6?#7!QPQG1IH^^\P0(WSK[A9W,QN'Q8.#WT^#2[ZI3?>F/ M>L:;=W9?J7:K[3QTK>>$"*)\4;U0][_--CU;S4M^"7;7#_BS5X^FOC=T+PYJQ[WYKN .CZ+IN>.5>)S,^W=UI M;NW^?-#3L6=TX(QW[PB)D?N]L73_QZ[G&45Y:R'SSVZM9*R3((MW=&,_=+.[ M>.>Y2U2Y^XJ'?I-P@>YH"*>YE2G*]LY^)E=SA5D@8^8*<_IE]J!ND)I%]*>? M7$W7U].A9U[W$8!SN,:+B1GZM<@0!V[Q=;'/IP/0O%V+#*?%>_LO($+Q\8"7 M<&:CG",I'C#I!2=2?(QC+1H T'Q?0(3B,S=K$:'XX-Y+;D-) NK$ B+8)I\< MU 28M4X$$/3YD2.!)?#6(D+QZ;P?XX0QIDAP+1HL91]17MS6^,8%S3!TYF9S MH:;S5K%.75EQN'U4&&Z5_"E>-%,:=G#Y[$#PG+&L48TVY04R D(GO-0?HMNK MAP?(D _\ %L]KSP 46 VR":7RFXUHK0IL_+>L/(,ZI'0E#$E%3Y&=4B+KHPD MSPP@UP)0&Z :8H!HOJK@+2)^$#%Q^.K,#A.L.RF M1A:(C,IHTP-9'I26?P<4N:V:<8S$CXL(:/] #?>>:'1?T3KJBI]PQ46$?*6" M:"#<'1JYC+:J=G,;=SF2H9[@^UW,%F [P(.^M?-R+-#R>>,P$->8",\"P2R" MLVPA$5WZ28J'!@)O0BZO M9M'E;^85@@^@OF[/N6[X];=A!E'"JZ,A%AQ!!HF)5OY,9X17$XGPGQ/AJ+YU M\4.)NBS&C_'!388UU,]QG\=,!'Y$](68=JPGG:]')TCG4F!H2%#S41/PD2#M6;O6D!E=+:!F&EM.^^UD*LE$=A&#."=-I[.-3B MZ9?9@VH0QJ?(4(,PUAAG,QH VD9^Z$(X*!WV(T=2,L:9#3*J7!#&59&'4IAU MZ6Y2\-;:-=Z:!7AKBPOP)R)0P;.KBU?T!)_,099'P^/Y#K+ &%_=#5U^HD=& M*(SPV#=(%N)UNB$2'? >%B0B@R%)?X*?U@6] _B"'.CR1=R82YXD88:D^<9-?NBU;%PAZ#NR"\[ M%_U*$?&/(,4W@9X0$M)M6F=^#6/\K!*'&L;8.H.&*!,AU=&"I0D'F;E=V_B/ MF3246F*60@)K;T(3*_"R%3\VD$O]-(NG"M\#2]PA207?N3';AA> RCV2DW!9T5SF!&P5ZRKR "YFK$8XKP3 MA8?J+://F-%""/*ZJ[;%*-X%X>L%Z/ M&SE3>J 28M<3I(^TGJ?PW("ORLV/"J4[[/+O_QT_[.[O[!D_SRY7K4T^$# M#WC:2'S!KQ9VT]Y! M8N<<@50MX%;LC+:@I'$DSPT5)HN"LI5W8YS?U,:K4[ MTTF&M?AZ#C]\0GA+^F_BA41(+^G59[G)++LF?Y).F,#WO!LG',V?!P:)2 /@ MP2"AA3WF7L<0PTN\>:B M8%;EU"9V<*LG&%2XU8^$=SX2,4(A>4G&S84QSU60$IH?D9*'T?V(.X'*85[7 M*K[\L#$X@+D7BIWG4M3=) M*,%CI&HFA(T?3]5F$6)G]P;3N X1KVD4UB'B!\2]?"FL(A_>GD#-<>(JX6,U MTKR)*!"4.9_92X,919L22ZT@N88T>975E-**6,57PAAZT;1< HF17C+U!*@ M/E;$IG!$H!T_,GXNNH4W"J3*C2(-WP2NUY9[-T9^E-I1?[K7J9V:5:?TN^P@ M0!#-ZZY>9?^A^4WU0+NRA%C66E\MQPR(OZOPDW_!L'*3[&(/E/P(N/R0".TJ MB/;%:;9O-M:;X"U78ZYWG'EJ1+4A-<;#LQ# OIH=GD=G)Y],4CL?96=44MW_ MII)Q&)3-&%F>K;V[E[5PU%SQ\%F=RE8U5\++ ?\](>1RIK4RB);GX@&X5F)] M@<:=TP2M\-D^O53AR[J0K;2\/M0,-I_27[D-_(_T*]FCQ6R*,\<@\2\1!$=*4@1$TWX%9\(V3@D-.;M50.0 M(IT8F6>T1#ID(@M",MN^\)X53TFVS3@3ZWAF!LH[Y59[B&:H&P#F$ENX]G>F MF<&^=ZB,^Y5K7\3;4GC^P*Q0R;+!G.8X^[OU,[ 8^=T)+KCAM,A2(\K8-IT M@XC7R2-]Q&^@8T4TJ47>#.CJA=^VK/'7#OVWM]WH^WIMC?ZH_:NQ'/'Q-J3>2E-^;0]VG;_%1#0^ M1&<((\@GPT3>7 MK7@+ -%9M\)\@>1]X)Z+\47F;DKKF1[)8\MOW?.0.KNS]S1Z.DWU:/HSET$2 M]((P2*^[P\#S_"CW:_;:KN?-SMXC/EOFH[5OW+7M FDS/=KC@#-/#Z;T M\[[K0'A5%*WO?4'_7B%OR;^\FG*R\= ]\X:SSZ\W>[#GK]Y63UP"$AAIJKN% M*GZ;@>(TB 9$6PM1MCQRTT 3"H5@/2($4-:YY$1<7X:OP>K/P44%*6@WN!(C M<\EDZ\B8F+F%#&YM$MB'V 6'2[-4JUT06@Q ]T,*7'RB1\;YIFE.:(98(OU[ MLNU>CS++&)F1Z$]"R:(NP_)6WR(-G\[I-'%;N"+6\B D4 I?/U)^QLIXKZP- M0":N"F_/D1VYT9&ZTI/04WA5YC1WZ!8CA&()/@5+Q8=E81R@(;QXZ\\29>W6 MTP6 /Q)C8,GR.I91":Z+W9QMM_YD* VR''/:@EW6($-][:/*",? M:C-QI=%#N.; &L^!DN^E,FI6<*&R.L=J0<"/ 5!>Y]^J:[/6S%\2\U?TF!'X M\QH_)KR,A@[(0// M& -(VJ$D(0GNOJZ0D#=E)T& %9S72D M1V/1T-37HF.QA&)*4C$0UC_3I,)3?L@%8:12KC0JNI-=:4:"HI4/LJI=DK6R M_<#N?\:@7MSRC602O/ZZ9?4?HZXSD ?!G,I!.:'92@ZJ\IC;3<88$P_TH ,W M))3*T0>M,^MX$!:!Y.5; &L J=%7,>.NXS("XB! M*EF7E2\\((TKC.$P0$.,UWB#6/XPB+Q$]I#O8?JKZ-1&)2UYH:A40,V93/J\ M0JZZ%.J14BAXZS#V&D@'>! .6R =%HDPE@3(/N<\&2HR,[RPM&3WF(LLHH/2 MGI"!1(8-A">V//,*T7(3CTB+Q@%1I!ID5,$BL=IOQ9XR#&]G%P$$+]LDU;'T M5&:=#;3&"*BKP_]APG8A5Q-:BPE&." MJ7E.*I( JZ(+)!=T %NL-:IQXG+RI3/)RK5A,'U#:A%*'^J(4N,5*9,<'-\^'K\X%./W##HQ8%YRGL_ MO/33H.]F3W2CI''_L1E5PB#R&T,_N!BF&8KFWD'J?T\;YBD74??O29(&@^N# MD1M?!%&W-4Y5N[EO-JBR_TXW6B M;Z]D=_;:1D^GJ1YU'?/.^4>A/TB[2U_' M^2]E'UP&2= +PB"][@X#S_.C62ZPU3G $V_W$>(Y.6:5ZF3I50CY-@Y/"+6 MP,C(-0,."V=/"!_JX/.\V D">8Z70!6>*>?UBA*RPBU> 90#G$@R]&/%JV"( MBM<3A+Y\Y*U8>=JBH1Y(>2681F6T\0+MF2M>6PS1L4'4GC'@%VJSM:)F*PT" MO7ASI@+49V0C87W^1+5//6K)W;QD%%$:I8HO$J/D7X!Q:Z,X%<]K+][&H&"1 MP6(.AB,)8(NLH=NEE^'QNZQ*2.[Q:J00-J203I4/,V/D*<4G&*<0CLZ M/E.:F!6'[(%W!.\ RS_#ITB=_2=2I!UG.Q\$F6?Y6@5G^:9?9@_J!JE90G_Z MR=5T=3T=>L_)HSX[;[KI!9>'K\T_\\WT0]^-S7O3X8$7)./0O>ZF;B_T[[VT MN9>]UGPR6]F.DS>:7@5>.C3?;OV>UNC[87APZ<) MJ"._.=^7'>?&X?%@X/?3X-+OJE-]Z8]Z?JRJW6H[#]V(.2&"*%]4+]3] M;[--SU;SDE\B79.F[_VT6L)Y'7 MZ.M0Q]V?6OF?@Z7[=?L;LZ7=+9QHW;EXG;M5$X[3W-WY^;8 N/U9JL?37QN[ M%X9U8M_]UG '1H9WW?#*O4YF?+2[T]S:_?F@IV//B/<9;]VYQ"/W>V/I?HY= M+P-MN;60^6>W5C+629!E+[JQ'[K97;GSW"6JW'W%0[_YS]0#61=?\>[$.@J( MUW^W%AF*+XE\/A& +M):- T*;Z ",7GJ]8B0O&Q@9?& #_)!Q/Y(% M'J6Z *?R.2B]L.4S1Z<)!>\ 7MS!A.!VM''E@]?*"Y)^J!-?6?_L,V&(5=A]J$ T2C;W,(;(UQ[QJE)IRBQE7/2)Q_J0 M$N"$H&. 8U=%NV-4(7_D\L .X+@;C'8>RO8/:-ZM],WM],]FP=@TD> C! MAP%.X)#M@U&;&XFSA[\@KMD-<%FON-JHVY5061E0NW7P>K,GLR^*VJXIV+++ M0N)O\?XW]C[G\7RB=X.H:="*8GD1N].GNNYWR?;8RAINX2 @;LAC@$\\V5Y\ M;I@IW,LPJK#V@S.U'T O><2KQ!HMT%E/Q"@7PC2%-Z-GKRF^J79**,M+YI]L MOW2V=O.S7:Z:9UV^&4]](=[X6YR,>ZO1 =#G/R:ED;O*6H5+V9?"[BMW9ZIW M7,;)H6K3&X>Y!%K&6%I6DN\S[& B?[3Q>UI)R8]82KJE;,I\BMU6X(9E2! P MVV>]?$PG8QH :'!99.;:C$O1 #VP8BMC4P%V3U!;H"P%S+PDC&F&.%NV9$>C6D35A#@Y]=JK"N4MIR? M-:)RY%HQJG6!5VW>SBKWPJU*XR+DJF2Q6BJD"U!6T1@*/M@0W.,GNFV7,O*\ M4\&KU\8-2;E6'_$X,M7H!9\E3\0J#P;DX:)-DBBH:FS%!S9 Z6:'!- M9+;.'MK-G0K8M%EMY02N[8"THK1FFO4#XRHL68&895K\1(6*.G1X%MW"W3 X MBU9#F-;\9(G0P'KL"<.XV&5?!P:^0?ZB[\2&'L3YCR6;2]4"A(7:E0,=AOHJ MZ8K>Q"_!KP1- 4_D3&*"C;\M&?P&RD6N(MKY4G4V=B %(Q\+6WX-;/XD[7&7 M-V%T4$]-N^)1IH3#\AH%1LLO"#<6ZR*$=?V/<4P,T!>O^*5/]LE:TB0KXZR0 MC^7KNS*+8^1?X,4&A -G$-0G2ROP L]0>PSOB6,Y:N1'A"IX(#2V\-+@;\$L0_*IN8N0J MU4I^GP[^1'@FG\-)>..CY\+#<*&Z&FK%W 3$&\K0<&O;8\T].+ B"H81CEP] M41XAV$=?!A[<"W6811@X=UUK#YZ^PK$J-P,!-\6!/$7(4H*-C$LFTC-B!X+O M&4>A[>%6C^\!@-[=W&F+KI4;>;FAZE[$?F;HJ:LX2,W;,\_^/#"% S,V3U@S&O%'7A( X$J?N I\;2YK0:TY4, CPC@!K +46;V=FZE M0G(.DRAUHU0V9P4$*"WD+-0ZBF?'0F$Y(A%LV:$D>W#:.CS)< ME?H$Q8'4>\)[#83/,85W&V '3;-6C[C#TDLSXTPO7U8(3G9^V-++0.%E&E S M@^$( ?79+\$EO(N4.H,5V2LF?/W<[I)+J37CK*##+(R%&.%ZS1FMC#-4CX[/ MY"Y_A9XN_NZ)AABE9/:@/,J3I>\ RQ=\P:3C[4MG? T'EEYH1QZ>5)T07>_T MFY)9]TTH&=.8V\!"N.0M%$[]QN$D"HJG"K<5G49_S$ ?0AH2V(IY%3#"M4AL M&&)8$"%_)K(SJ(0A03?C((M?O2\]V$7L!^+-Q&",J.O@3,>$I]**EWX;AZ\$ MUR%;P+PB&TH=) (FKU"+".Q1VP+5LP4$"S[Y'9&\Y0\@K5,\*2=S,"W6#@X% MMZ[5+:(690*!%:XT:(U*DDEX!8ELFRR1/"R9 MFO\/!D'?9314UVYBZ?I_D@XU?HK88@O_*SE0F2&KL-2HR)A UIBG<-V'I\M M.F(VQX>OQP\^^\@-@UX]]\-+/S7B+'NN&R6-^P_/Z!T&D=\8^L'%,)V^ M;>3&%T$TXUO5NOEKUE$@^99?V^SLSE[;Z.DTU:.ND[WO,DB"7A &Z75W&'B> M'\W&PAM,TF&>L(8F@7<0A"YGG ,FE@TOAHMOLA$;8;8 MX*I"%== 2G$;O63W.8J6?-0\Z1R[GK -%&9)!;$#*)$)7&+EHW1H5 :.-DCX M<>O81=O(I[19'<1VA08BT3_I$4X:: _ 02=HV@T9X""JMQJ*O73IEVK1.0FF M+5;/K5W3;$IT!*]5 (.H29[!)-QM&&NBE8$(FEP+'VGQ[PDAQ>MP/"RLI".$ M+*$I4KR#CA33R:3/@ &KDS-53(I738?H_1GYGO#8=4K+^6,2=XQ)T]@R/D M'4DPV/PJ%?D%43,ON[U#-M!V[6*7OOZ*N-BQ:%U#F!?AP$QT1N(-.=R4T N) MY)WBFXL>J6&%=*VQF!\!;"Z:=62/ G,5;\P.HMPI2=UOPFT']/(=X A%IMR4 M6=0)XWTJH0CPHORI90@]W-,3N"_@0&OE&$!C.($TDEV/SX,S-2+)#1DU,+C! M$(3A*T@ ''A<&BA3C=E"R,FT4(-[R"T%+-\, 9$AV40B=$-@[YAL6R@E!!2A M]&>@ZLO..R--N7F[+@&/$;>)(*I&_\\K)3P3'7A^E JW=Y7L6*-H#N)Y9DST MBU7LB[#%QH%/R9,*-@?J3H(UDM2TJXT(I(KN&:R2 ,>Z/N.Q9+]Y=?$5)&3. M*P]'E"?7-F6I^6O\XGEP%\ 21QT- K@C+;_(CB]2A6(5L0@%%GZRS[GX"9.K M(TL^KPD07I$D7TXA@]ZB^V4B1K*M$FP:ZPD!V@$76<\&R AF51OBB0B=E.@H M871-X03@^3"0C7G"6'XEDMY^'P*80R _JA%EA?A#Y!6O%;QXN)3Q4W5WQYW% MUS%CBV+&L/P>.69,&=H-TW&,@X;QZ95DRA.ZG5"!Z4J +C):C'$^)R4!BEL^ M"?,59<>3X(EQ\69"R3RP,V@\(1CLP.E+ !Q<*@J6_/$U5-1OVF"3XF^U,5-X MHYFECU03KI.K4B N.>3( 8D&JF9X82_!)ZEG\\MOIH4?%#4>O'7W/1:.3G?VGQB=[K1VFSNW9Z?W"CG@ M_,NKZ3IZ.O0>BGE-7_CI]6:/^-8;HPSWUMP_H6UJL:TB-Q1Z;BH&^5SY+B" MD@-\RZZA'+]J4U]*42Q9:SE_KY,J*E%CQOE<63;=5H+=5N8F.NV#WT*W%%;Y M5@JK-+ T/:O6,TJ?\2*:]\-2?[$Z;&A!E[0Z&=$BH?L-- M<)7*0H72N!9/+*;1.N9A.LZ?'77^EU3=*"$ M@_T)+T<.-:^!1S@.5932\%(05^U;I*\(7C=P$%5*",SA1!TE! ND/JDGVP$Y M.H3:?]SMI5JC$2%$@1-SD9;LXA,CX#P(*D[K+BYBES?=5-&711RU:.'!L#" MJQ=N8=3S)]>CO8%8M&_.)6$NDH(10?.,(= M<:">X?$/(@>EAP$/D!:A:WA /L(]\9!@4P#OV1L>]8L?#66>&80!'FX'ZXTQ M(M:DJP8]ZU@3\%:!GA]Q& .D5H!7*H"(+,/'&]$BR]"YNH3L$^Z*R4]_*((R M*&&,@<1Z$*R#P!M3BL >#GR*=PP3%+^P%H\@/B."O$6V%[/.S';K $"M:8\Y M2U1\8S%6 T"JLTFJ/LGVI6*>7$4@-1/K[/(;YR!NW*]-=3[T57;QOC5RGC(_ MJ#TU"B+S M$T&BQCH,^M>_OE)70S]2.C8_[\9!]K#9[^8_Z*O)6^"(GJ2XXFKPJI(8RZ6+D\20$9,"?[ MHA$BOS#BKRJO$(J>@FP\&#($TI3Z#(@B1S1$416,+F()BH\PCQCY.EBRE[9X M2$:?,;.>IW&F/'HB--LH'+"+:%K4';@K^51TX2J N#POKJ8MG0F(KB'0 :B%;@BXD>">_=) M+>DLC8"\8K1JR%4V&B^:E4%TR4OA(D9"7YHW$$+JPD/%.+T_GO"0 Q#21_I<$]',HV-\5Q.X MQQM.?Z>Y T1>@J("CP -Q01B4DFMMR$\U.F1&.36P48YVG8D1(Y$Y(VC" M,9DD8Y\&YH>8F1[>/&(:%7<68?G2-"%C3:8YB44=<" M%'+B _N*EID5WL7&.F71=8ZKKI[H=KD5!U4\BH1Q&21[AA5NRY,;0C%^A.3Y M"EGW\V4@N7B7:O375>;EW3/I_BXAW@/D'<%!^C+UYG1/"-0_XJA)1/3SNL[/ MERA+9?>!BQXSF87.0\EN"*=+5S# G_P)!#BM-1%L1W 8'U;ES>527LX"TI E METMK*\B^^[!B3]\1;J;P8C"&W$!V<@HNZJ!6O^@(7WIYLX-_(TP9R1*) HW+ M2H.!$=]>J2#JAY-\")1T\4IP_(%!2.'*HE&7K"<\>4.7=B-"BR,H&XD(9 M5-2"D2\9(+SV2&TTP ,X9#Y4&]41FG7OPZ:&ITLJ@ M5\A#\R^O_.!BF'9[.O3,6\ZU\J-D$OO*S>?8?VN<35+UR<_JM;-1]Y%.51 I M?S#P^^DKY4;7ZLU@.N+#5^/0C:(\8*I5&KN>G_UH-D(S!RN,KNX6M71>[($.FO<]W?=CI.9[O5:6\L%EX>OS3]S:O9#WXT-*=+A@1/ MOO.$\8/'?&1^HQ<'YEC?^^&EGSTE.V*S^\;]<\ZD9QA$_GRE3M/9GVVGV\H9 MZP5,NG%XG#-"<.EWU:F^]$<]/U;.[BO5;K6=AR[!G!!!E"^J%^K^M]FF9ZMY MR2]EAXJB6>I_3V=G%6>?%D;$FQ?OYX_:8>QF]>(O@R3HF0N=7G>'@>?YT<$4 M0+/5.5A>V/3N+/\[C.>/Z!FY<1'K2>0U^CK4G5O[G8.E^W?[&;&GM.TMM MW;EXG6R]LX]"?V#VXC1W=WZ>?Q1/]W?KLU2/I[\V=B\,Z\2^^ZWA#HS4[KKA ME7N=S/AH=Z>YM?OS04_'GA'H,]ZZ)*G=?\=!O0EBBL[?,X']/DDP<+W&):C?WC&Y3K>G?EXJ- MH^//YV].3M7Q_QP=?SH_.3O]@F;ZK?'-C0B6YMS,///66O_DB M9KP3&LF7:+9P<#4,4C^_#GXWTE>Q.SY86L3L(&:+=7^]NZ3;WR_NZDR_S!YD M%A6/W/!67&WV$6*,[UHOIL'>K$F&X@7RCY !B,_Z(\M!2O8USV62%E\N]6,, M.J-$\46K0D^F>"O^1>=2O)&\)AV*-P]_3'+LVB0YYO*\^,SBCZVF7>9=(99G MKLFSL;'TK* %;D#"2[BV^++-E\GXXJ,P:_*)5WQ?TK-!O//"D*4KN='KF?'W%VEE!]5@GB9\D61&U'JB/KATRU@(; ("J M]S)*E.96ANK4#H<*./[F94=3_ 2$-8]F/.G98JN6;13UK=$YG9P0)Z5%@6RA M VQTI$C=&]J$V,VT++"D+,V;.D@(YY ML8[,ZW3_VV*0^IUNIGF3UJP :?KMS:Q#:S/O\L*T[64?@-KV_C%]>CMUG]Y2 M'UZO[M-[7!)?E1:PB^THSV^7:S/5G3465ET8.V&2%H\]^2.T<)K[-M6^6E 9 M9 4=2J]<2P'@1P+%ITTN9YWRL:#UW9K>C?:LBL,.N6V%2K6"$J7WU/QB!1GF MXJJTV@4[BGJL;2TJS2VSQ2$I%7C G@:>[;O74L_Y[8H6G++N]851)E!]O. M-4[#C@J4TJ4;8E#2B[BV/*0CVR19>94.H[$?V<$6%MP/6\1HV3UN.LK'*"5/ MUWULEU?X4==]U/C,+ZS[Z%M7]S$QA^*F !3Z'Q-$I<)-V.(B-TH&R#&*(+KT MD]2VQL[2R&$)_ERK]-">MB,]TBH]F^L!9LK+--WJ\.I<2'B68)>6KD5K[%(; M=4>Y".[6%,"4K40MY% K"%&RU+)/G]B2ZJ^Q.NN0W4.N0"TV7*NP.LMVBNJ2 M?!L9U+:"6]O0R^SP4TJ78@OX5$O( 1MOO28] ENT6]F$N VE6Q/%KC H; [Y MFH2H895O4D=V5&A9$$^PQ7$M6TK8 RX]KK&E;X6G:VSI&2EL2?N7"\?Y0/I] MNIY_.-1UV4C7MN BW='MA!CQJ3O MRB+&V>UL"SR=TAFCX*^6WMJYEX*HDRO_$#0LW[9\R[$5DF9NP'^W8C46.-S6 M)!I*CJX'B:\L:3TJW63+"F1T_YO2XW2]Z=?/%MUK+N.UJR)W9-[V5W_\5R8& M_W+^ZCB9M'4/2ZR/]6/E_WMBM&6CYR:^I_I3X-6\C'B*M:D&.E9]-QDJ/2TB M]?PP,&+]VO"8&L?^9: G26B^NHK,[^<3K:)K-1W/JO[C)V>G=?!>7_GF-U[E MOYZX8<:>*O^IH1N;C05),C&_:]Z8_8#_W8_[4QZ>/ZYQ$;M1ZGOJ]F&ZD9<_ M)EM=Z"?)FY$F'0:(^Z3#H7Y/M MJJUEN\H!V55;Q=I5"#ID]M #MLV,-$YS*ZO@Z635M#EUMIK;!9L%Q&),1,R! M%_ B1G V#L/BLV$K.QB*U^544A4/I$VT_LSRBV]H>;*UK%><(IZIW9X./?.& MMR=?CCX;#Z('>\/-YZX<<]$ A9EBO.&O$#C"S MIU?T.,*=&B1@V=31=78/$L5C6CAO894HW-I EC0AJI5XA4AF]:*%*R_+CA 6 MI=$)*P'U1"'0%*BF)=POF6L[A+HN7DZLXM3B_1^"-FLU.[6EM%+*99DL5WW%#0SFAX60+;XDDAN^(!"J \R8\*A?_$'+MF6HUC%#:@/9 MM'@X#AKL)S4@'.LP)'(J(C)@OHZ#WB1%#"PA.RK$;)M/BR36E2RV: SQ"@.7 MEV$&=^'7O(P2/H \J45'J294JB4;RT;(Q808#7#]D09 #Y,MLR00GC7C!66$ MYH)0E8UE!EY1#=E4SAT17&!D\=M:;;XV[X 1*%0GVT[K['OIYG83OOZU#'W9\ZNSNM_?;!'3J,#!G< M6\O86;V,G+?N=KHOL!/.=7_;Z3B=[5:G,\-.^'&Z;!Q^.GOYK5BIF\]?_NR- MP^/3\Y,W']31YY./)Z>%+W:QU@(F"&P?X4ML "U;UBF>':\N3MOBUCAYMEG]1;"C<4-L-LX M/#KY5 ##K+K8!6Q_X_"T /&P:H&?BUC@5_7FZ/SD[!2ME6\ALCR@IPK1T34B MRSJVYQM"C'0+6 TQX35T0%RDR"?$B( '(+Q8.]17A" [D/Z4[FG8^E<%5."A M,RQ7,=JTD: "HL-^E*Y=X(T>:$*#Y19L^0&C$!4V<$I\EQF#=X#:C%@P@9"< M'K[78J$CBV]*H53G KF'T>A2B=IBSQ,.S,&H-$46]HA>O6B/@VJ<,\"'4,J M*I!X01R$R7C)N! XK4FC_4ABG\D2XR-*] B<#XR^3I'F,V 7R?*'AL!2"MB> MW!)$Z=6?XTGJIHPBJ"D3%6]5FCL@W-.)/-6;)!2O'-G'D*AD0FQ.ZV,V08@N ML$8R0)D6WSB6P:%)Z!AL)HP6M?<%Q**=S!4?Y* ML"*@QJ$1@QKTI;' "!(:> +I$*\AG>8>3<5TD%,(1)]T\7DDHIB#C\IPFMO M5V3^TF[]*GIXA>3^-!QE",K_PJXL'@&@SX\732W:$8-/1N.Y67H]4K&YE M'F>5,7X/H2G@M8+8RE;AV3E\Z)(J:Y$8,@HN:]O 2(9L@VPDV238.+P:2G;0 M23 -0.V/+TB'L@^1>VCV9/&%H838%%) ?XOT%3SBB143WH7H$] #]5%Z%VP, MMT?!E0#J%%\:<[.%!J+N>M+CU3,@C"U"95N;%WTI;,#.?:N(QZ?PPN6Y6D: M?,7PAKH:/?2Q6+8B CX)!XJ-&=76@O.;\)&TQ8?)B8*N#L>O2RDX!-?2I-(Y M ).#0&%:$V%ITPLN#U^;?^8O[8>^&W=[.AT>>$$R#MWK;NKV0O\>BE/N[XS, M)[.=[3BY\705>.G0?+OU<[:=I0??>EJC[X?AP:4?9]0+9U!,TT??>0(>_NME M9-\X/!X,_'X:7/I=XR)<^J.>'RMG]Y5JM]K.0QPZ)T00Y8OJA;K_;;;IV6I> M\DLDV*PX^Q0P87B:O=UE[&;UXI]U=Y;_'<;S1_3<_K>+6$\BKS&;;=S*_QPL MW:_;WY@MK7UGJ:T[%Z]S,]FY$?H#LQ>GN;OS\_RC>+J_6Y^E>CS]M;%[85@G M]MUO#7=@9&K7#:_1HKZ-2KO0);RJ=F47E$^NBZ MAMM84XTF#/P68#B!@02 VCB47W[)NL+"8TB$8%L;)RU."=JSA3+SB+6P-.//J)^ZYO9)]0F[ M#R?10,KZ2/$]Z M)<$0*3C&O89E_ZN%B#WG*.(XU;JY[=Y]8"1;<1U/#&NL55V(T._""Y0@8[ I M*0 84V4E5@S0Y5HFK5Z^Y-43P".AW%]\H0W5FD@"V;Q/P%D ,@]C1#62_$$T M@ =XL/7!!/>L7?L"U5-<7"$MET[Y%$GI=>!9WRX!7A^;A6+863@N$I[)(8;( M5TGP&:"V4/&$NQ@U''>I!E@-QUVB5/TE$PKMUD$Z!5?(OW(.?FU*WM,Y:_%" MJRWF[NP7P/*/&6A@=7*VDGI8>)LTIY(?)S9#@G4-,R-X59O""^*$M_'54[-K M6U< FQ8_*H%[RY3\\2<9-*V'SVUAB\="3;AQP _OG ?"&]& PQ/&@D/)2T25C*3R("0V>2<[FKJ+3)X0XDHPCM"+U!P<76ACG" 7Q2K!^ MJ#7I^LN_"D)>@$5X"3]E4@A/GN- ID6;',FD]S=-&PE'QB#$ZH"RCP%LA%N] MMXBIT(02HG8<#W^^I!2$W@'I_7LTE383%I#!":KNOEK?^1'=?66\'W4U)((] M(\02/'#B-+=%3UYLP_P$>,[7D3WIS*&C;$,*^R8>7!\X0/NQD@>-*+>K4&P2 MFL\/X# Z4$NX0L>\N'F(%@*"=I,]A]1I[N"6/TF%]XH3=":._,3"<<@(@30@ MC+S #1$03OXZ4O2DM0LT=V4OGQ!\0CH;=?#IA7L2C/P#O!=4/_#?D]IP7\]P M+WZHF7",5EI_'?5">,0+C9GK,/;QL-&U3?F83:G&H1LEA E)#6 [(F<^&.P> MQR-*)U%]"U;? CP&]A+_(WAH!/?->07YN(G=U"3VR*=A,R/,57A[X$VS5G?> M'.8@N@.?V_W5UZ&.NS]U=G=:^^V#.QL>F?VZMUZQ\\B^LO??[7QS5>2.S&O^ M.M?];:?C=+9;G2WS^:;[DCUO')Z\ZZ!;2A/7"K\T?_Z^6/ M-NLK?NLW9/VCB!6^^: ^ XYGML3C C N-PX_G>%6>%K("HOGP\4"?RMD?1\@ M-V5Z"0O >]TX_ J3$05X#!N'9^\*>,S*6X([FS=%;/[H??&;OQ%CA2SQW3L$ MBQ>[QO-C=7ZFCLX^%M"$M[(Q^\,_X#+^>7+^7@&4P@U/%D)%(#\6@/*\=,HH M&SW[8('CL+]5)(Z#[< -G;U'@!M:.6J#XBC,XN'&S?+AT+70:*A'+' 3BE>'8WW),^$W#I,Q90PLD/E[O D*"+1# MX0422G)',#MU3CMJD;"<8- .!B[2%M! %"VD"2H&17LJJ!/-EI"JRF#BF2#> MZ+AC"%N=,=L N/P@2@B5+S@]$ BWUN'#PL3/D0!&:>0/I*8):=DXX:]4S(#) M0FV V^%'FU](A,6%A(H(F@?H >+K19$3#*6/)DN'/F,&TXQ]$*$N1H8&QS^D M;D('I#RS2*/P!*5DZ;G*0R#:DSXD)DL328CARR,_$NY.$4POH$5!Z\Y&++Z M^M%U.2>N?<%[RX<[3<0)H;-C_A,2[O+TE6@APT =M$C&FIL\6 &:2_)PR/ M$Y<8,2ZS[ $;!CIB(!$R+3[Q9=])1O\&?^8Z M)&0<,;'9Z^D[]^DOF%-9=&_&00P M8Z;T]+R+?Y/X@9?"AR_PN@L114NTE@Q(P2$AJ@M4-><,/0,$:!6N:+AS4@7' M?ZA#0C >+4/! V.Z:1ST&1Y(-0(PHG%SC4IVA4]Q%.T]<>(OR'HBV=[K@-'B MS*I.YF9*8$E1+;R44HUUA291@C-5/B\8@IDI+SN &C*@^&EM( [=?0 <29Q0 M(+!P.I6V^.)#>1N'O;^%QS=IJ2.IU>G U=>@2"71G@J*1#3NX+-^L?DN0L"< MV&LR.Y1W$!P@T3$DX3DUV7D1V3I3PZ>"5F149\Q %$?:1I4JL\9%OX@CBH5W MZTL.LG%*F9#H2Y*%4?'H%RM$$<)4O%;"(=XG8:J( QI$AKC MD2@)SS<3L0! MA,1F(.& @CPUB3AH+R#.529 \CF52-M->$P%*4-E9!V!EV*@";4$/&<*"N+R M2O!)5PT0$'@EX*A,8%^6D8>ON;1L+N54R]4U^#:H'D+R"\BI;Q3#[G9@D@^C3*%#6I?AR$#YQ&K:=3T?<(5?N2I9!S$0:KT@-$KW>#9\W69RF-A M;I[VIU6F%B]2,@\W]%3/E]Y%%26!\'2D[*P,;>J,2.1SI%+8.!S17"I$,#7% M3U+!DM_8%8*O+K$OFSFO#2'C1CX $*6*B5M>_ 4Z'VP1@=D<'[X>/_C8(S<, M>G%@'O/>#R_]-.B[V2/=*&GAFX;A^?O MCU]O]F O6)U7H[WSII3A'?*M&X=G5$+.9,<'[)X^G/UY M*8:0G[F$G#'F1RPAWYQS>7*V*^CY<7E^R25%;NDM5[_,SND+=E-'I5PIZ$7> M."SE0OV&W=,QE!$>26E 95\IW/<6+"=.SD_.3M]\4)^K*##./S-OU\VA0065 MV98Y,NX-6$O( A^Q/WIR7L2NH$@/[Y^6(W3_?GZGW;_YUS!46I+C;\2G9 M1>=HE5)R?-#[S!6"-$NM@B+PK?K->*YE;.P]6%B482Z14SBD]'(W?SZJ;.6F MC*9;9$E/Z^Y[5E3P/+=@IZ]#'7=_ZNSNM/;;!W?H,#)D<&\M8V?U,G*"___M MO6USVT:V+?Q7NI3'4TF52!.B+%FD+ZL\MC)QW8D\)]'K89TR)0/?NW?M]K[TJ95J5,[DJ=*?V-?^]-J-7 M3M?IONIT7]G/7[K/H7Q8&[([\2B+EN8_.!$[)Z[NS M$-Z6L<#?+M7'/X"+O"ICD9>_U?V8/Y30^X.KM+>\70.I6 HO7I5P%M % MODMK=4I?X+SK MH#'S'P7S*1D:3++>F5@3F*C[$4!_HH> &![:.P0TR$2^2B:N[$$:3N>%Z/4S MF$@Z'C%P_0T>\?ZT2N,.SGF?(+-/Z=8%P@[[3)S$AL!ENZ6"74$<3MG6$0^" MNIF1\HA]-(]Y\0K$!B1'((\&,Q,E%!APH(F=8FC_.]2)[_&@H$M(HS_*'3998Q5&ASMQAN9:O2%,HRL2J"/$1)'6(X7^$,381?M(W@N=/9XXN30:6 M_R9K3?)$>/EOLLLWLL-L/Z:F#.\"IZ&&DTX)%<45&DV7[[)=./V?\-MX?0C9 M&$;%QVO9D5S@\NT%Q]>LX#@U3X>)KB]@A(=S2[+\@=04%ZNYO#60TOB3&/IW(56%HE6!"66+4TW@4ZPM)-D2:I+:=4QJTWVT)J?] M2$X;OWJ<\=*DXYMT?+W3\0<1APH]Q/AP^708 )O^C>O2 )!)[B9 MZK1/<58V_)0=7"4AQ<,L#*'R,Z?".><=R[DIGT./!J)],X(%[;2[\JV(AYG] M5Y)/!%>7,)/L$Q"EQE@G<),.JBXE5Z-RT^"\R/7_DQV,(F2B@!<"GG'$1D/P M]610Z@]I*I\1]0(&R'GQ7H1M5+[3S6/2@TOK Z\S,S0N4^<7EZS\-Z797L(U MZP*+6VD6%\(S@!O6R$A.K]S[C8&](Y;1NA> MN,"IE_D(WG:&6W_UI9E-&4B5]UEL&0A0[2QU0KC1DKL\@.2O,H$F.*,)K56. M"?*HL(Z(#>@ES)EX0*DIL0<7(;H)<@_(I\1$+P1451NOS4-Q*6'.R*'97?'< M#0DU5T#;A8%FQ-+]=ZWS$!]!>ON6X(,^&CAGHI?/Z.7%A2P80!M W(LFE%"O M4(+TCA)@VJ\![JJ)WR&\95YVAT>'56Z]HE()\W"KO T$RQ27;F>81D")[5QT M3T5OX$<*L@"]?P(%UW8 )RY=VA48=C1#M?QT\]'@F*';#B$10K,!I >#8T:$ M!RB5EA-"*!*X?GCQ$3ANP8.UAW=IB =NQUG;!&6 ,O6:";;?E->)C@\2!KZ9 M OMP^8PIL+A;W0R!W5]20"Q'RG;G2CPY;]26*F/2<'U9K:3R:^OIDDO;,< MCF&IO61B?]QY85^U^>![3VN-_"#H+_PHT2,W:+F!O@E[^:.WGC![E!3O[#>& MD;9;_\4/%G[ZE)0,;ABW'M(BU4^!#OW52IVV.],5(728+6H8F-&G8M/%:I[SI?10431+_"]) M<591^FEI1+Q[<9[ ?LW8S>[%+W2LASK0R6UOHCW/#XM88J?;?WAW-O^>1*M' M#-W1IYO(S$.O-3*!B7H_=++_^AOWZ_X/BJ6=;"VULW7QNNEZBX\"?VSWXK3/ MSUZL/HKR_=W[+#&S_&LS]\:R3N2[GUKNV(J&GALLW=NXX*/SL_;I^8O^T$16 ME+8*WMJZQ%/W2VOC?LY.:61>C:4!LJ@;K734( MG&P1*\EQ\0S!GS@#1R3LVXK\4GM <*L?ZX!@0 +G6#*,QP9#\_'5IQ/=\>0_ M$>WZ 5F?63,AM(P;N'QJYHKGR,AN#6# [N'$T5+XE8CBB887 B(5 @>+!&B+ M,J*!*XV&&;$M-QA[<%AS.#Y-IS$I3[3C%(M>_9+8 MC8C@^6OY"]_$@1% TV MY.HK_$ UY 5VB?J+X7UD+Q+=EUQASA'8K$Q+04%&[*@F1+*G-=]$2![)#+D\ M-/ FGK KGM!6;P/9YP!WU9"GL"M0B!D[\7GN,R#A@(<]UH&6K?,)=C&0_HQ! MSTC#?L@SN\I_"6 LE$*VG9PM8G H6*\VD14])\;OB7$=V1SM^>M_: BX_W6\O+B&U MEK^I?.2%M&H_3EP>_R"X?TIQPG%E'/#QCW?"9]FT VRMGE! @^,<2@$-;OFB M(XW,X9L0K8OO-P.;^PRA#VSD8=1$(7&(M#=W@UAISZI?S4R>07IZ:&',\G.\ MA EB+>!5J##""(P$,5U*"&:MW*Q$4]G:6& 2-.@!6&!JK(6?@>S<-V]2$[RJ M$BRF51)I1GX#==C45(2"HS:O"W,0A93"Z\@27I,XHE:=X8P >]S'E'HHV9#E MR((T0T0'X_50%-+K'5QJ<>LR M ,_B3[\L$,_.]FO;W?,'B,GV=_9$EB4 ^#Z*;_KZ%0S@]&V03,S\9I(VW2DS MM&MP4UA7E1CE%>66:NB'_EB/M!LHLPS]K'!>F;%:ES&&MZL*/>5_GELJJM@? MS2.=:+L:':OT>?9W9WXZ"4=%Z>]$OI>^8^I^\E4\'TU6;YM'OG)#3X4FV7S^ M3WRW?VE>/ M'R6QFAD3V:\5"RH>WE;7$]_^BHG\X\W/[3."0+EQK..D6'Q\]]RL%OMF18?U MIM*7PV_/'1OW5M?&*?ONG-3^7IR]RK D-V_&L)1M9_]* (3$KR**;@BG?IX30OT.B/[D2MK$* (L ';09Y/8 MV?NXY[3F<.'5BI'ZG2$'!P$[^J#ULO]I/#3!K#5!6D. M[=&QK C)= '80/=4O>4= 41>].!1EC@U6_ M=I(COK]YF7B;/WS67=P:P)TMT6ZAOYSHQ,^D@=\+S3)R9ZNUID._BX,H%ONW M'R[.SB_ZV^NZ_TOEB8_\G^F#[,JBJ1OY(;%O<8LRE'6YS:[2G(=E./?K==2/.AP%\Y05E&5PO0OM)G'14&.EU?TN"I>$WJS&B5I<+^Q8]WGKNP^=,W-CN M5GG9+QUGIY+^K_SYZV-(%Q+YEFHZW*] ZOANV_>IKXQ0/Y M!&Y[*.G9KPF]KFTJGKT^BWCK->DW[%J=CO+<6TNB= )Y7@TVLDN,_'#DKU[L M+[*SG&A[NJ$_\N-8IT_U'JF'6K_NKA;JOB JI&=6V[:6GR]3"?LRD]('6&W' M3(HUJKI1U26HZM.*5/4]%?UNXH8WN0JKK;;^F(K)M2!/5<70MVHE%[%6CJ_5 MV'&F5^W/ V.EI?W_R<1-[DICIZX.-U7<\>,*+55C<6)&GW(EIGY,'YJ^9CY+ MM6FLOZBI7>=D)<_72G3DNZEFS8.^3VB\G]:JZ71;9UC%;)6!?:XU)0J)/[:2 MPBPS=>5^LJ^8!2GO6T/#6A)JE!WA2B>&\^DPW<=C=LJCALD]N^1.V::5O)8+ MO'3U/^K'7N0F:;VP?=&CAI*E_H;I$OGIR,F\+GEMJA3;?TI[)DNC?CRQ:YO' M5M+%<:Y+"\IX:5&RI7VN..\4J5UU$EF9Z8ZRDNM"WWI?5["-/FWT::-/I>K3 M5Q7IT[=A.!?C^>:4VA*TF0X-5PYHX7\66G8O=5EHRO5SW"C9U<0RUK%E077K MN]%F(TRAS$969UFYG'IPO!*E. ML)H^5/^?TSGN=#K]0F$%P:8.**R!>&+F@9?[U]D&UZJIT&N!&R?W5CF<6[_, M^IVI.][/+ S[^.+Y_A=_:J7OYFN.[86K?]M_1 M[+_I+?^O\]_N62I,W$'IL>T]UU00=V0MI)0S[&$?YZ>4FQ.^*=;[C651%M*ZSAV\OQ]+W_?C/KI:<7 M@S?VK]571H%]7L]JYDG?2A)K%M_VLE]]8*ZT4U4VM9\4BOW,R= <-W3RT;T' MWWM:*S5 MM5G_NBM)Z#LP#NC[WGJ]6AP.1Y;:6YE>$]=F86?.0O.^;$ZZ9P\ MFB-<$4*'V:*&@76,BDT7JWG.ET@EVIE)6AH1[UY\<3_EB=S-[L7O:67G=V?S M[TFTMJ3=T:>;R,Q#+[6F3=3[H9/]U]^X7_=_4"QMVU7H;%V\[K:?X#CM\[,7 M]UV%^Y^E1G7VM9E[8UDG\MU/K4S"]-Q@:<5-P4?G9^W3\Y4EW2IX:^L23]TO MK8W[61BI]Q:R^NS>2F8FMT%Z>?AWX6\]=X,JVZ]X[)MKEBA(V#T_ZUR<;'LI M4\L?[CT^.-OMAZWX8*WIK\WHE=-UNJ\Z:TW__0R^<1+?U:I:XC[3]Y>7OST: M7/_V?%6YJ_JDA!J%H\'[#Z4O\*ZTX:J,%?Y#_?&AA ?M7.3[,A;Y\0_U]NJ] M_8->UK[(9I_8Y.E%=KZP%B[1/5 INE,1TJ?5P2)V$2?N(=8\(^I((T_P MW'(JI6:,9BC<,%31$.1I<3BMX[.A_H/E)P9>*5RQ[FXRB[NVWF06ZY=97"6_ MXCN^>BQHW5TI%%)MP+UJ?R'%_LUE;"[C\RYC"<&,[WGQ#BN[_!F$W[.:C4;- M\AN7]CR7>?GMD-]W,+">R3T)L2@_*/%]A.B"#-0]Z?"Q%F1 ]L7O20C ,+#G M46)4$8<>#:+RPQ\B[\:/R:1\#);GZ+&*S@6!+""2(>K!#8VP9'2"/\NL:41W MQ3=U61O)72DAB,F ?1FT+JH$%AG>DQ#Q?/AG34A1K="JFTQ'0 9]I^BHF$63 MVLC0J@D!*&$0J$T0V)?/$Q'EPP[N20BST'6QM*J.I)FP+I2H6DP T,>^CQ"P M28//NZV_5Q?WKHM*K_ZRUH005=]5 *JB3$(436#.!02Z[WD"HSIQH5KU$)ZK MR&\]KFT-X@?3NECBL,*X/0E1?O7<=W)$M8$4WNS:/<^E)JXB%EM^3UK4PUW$ MS5/8DPQ1@F@>^$ZN0-6=BSR9L1K6@A#KM1+P]V=3@EMN=_)J#4C1&4Q^RE@]-5W&G*418+4B!;&#>DQBOZG$Y:A!B"CU5#\>U!C+33'0]/*3J4R=- M"FF50DIQ]^*)B>QO0V 1A$K01FC4,\:CD_BG?J/=UMJM5NVQZ0=W,#VORNR/ M;1IBFX;8FC3$UK')JQ[V3 TDHJY+X*INF=1925")WZFW:T&&&C1;U2/W )S] MO"\=W+J)K,J$=UTJ;JMNHJE-Q>U)M72HQ\58![8G39]RI>R0(?K7A!255A(< M#6Y5C5I!*Y:6%5W+^EG\M0%_J51M[+BJ]8CW;QA9E5E9C5]8)VNS5)Q&7= M\@-_^<#O:<47PVKTYF[D(?#:A&_RX&9%1??V:NB:1+*J;H6NGYT5UB6>5$_( MX\JTR:(AQ(I!ZQ+-J5JQUH(,&U7HU/VU$]4]0F"5$Y(6H"P%C]S"[[LOKAFU17G>;% M:JF#>D3_J[\F0[\>_GG5EG?]S)Q%7>)KE2)2'@V6M2!##1BB'B*\:I%5/XU2 M$]U:]<&D#?0UHT1U4Z6U-W>#QE$M)'AC;M7-W*I<;.Y(%E4D0.JB7!LKHS8W MU42J-JY(Q1;XU"S\NK!%Q?4?]<"9J$&>RDQK08FJ$U7U ^8W39G!U^-+]3!X MJJ_@JLNYU G[H'*SN#[9S6IGA]:G]K964JP.@)%Q7 \)NF;1VICI53=R-$U7 M.1W^8^I13E:YMU*CP%O5ZF18#P%>?5RC@>)8^_+U2+!6[BG5)^97\1P@78_H M3N5JHSZE4U5'N6I&A^IN1EV\TII&^^KB$17DJ1!EM1:$J$$8MFX]U'7AT(IA M@&\:B5Y(]+ V5[7:L$G=QE3-ZQ'.I 16M! MB:J=][I=VGHD*^R=K?K23MR:1!RKIT5-(HZ5"_*:C-6JGB'JULA0652E+DJC MH$-%*C6]&?68F>NT3RN^&@M=#_^TA18WP^"JF0_VR14$]#)L:!/F2 MR(2Z'KAC3ONLGFQ:72%L72J4"T)4M)RCP;PN/%IY-+H)GZPO1ZB6.IDH?Z'K MD?RO@5ZKAY]: \E9-_W>C)6MFA!1W5BBNO)G/:N+#JFVI+)>4R/KDCYL55VB MDB,GAG5,FE57WEBO*U*/B3DU,,;K$=]9E5O60ZQ77@^QT4;R,O$&;Q)O]>ZE M]I))[Z1]D:\O__'+)$K_!/W@S>W29[]Q #R-ME_6+'RS\1(_<=(EN&+<> MKC.](H$._=8D7U6V\*D;W>BPL(-4Y^Y/NHS2R'/OM>WN>?':UM DB9GVG/1] M"QWKH0YTW_.8ROC M;]>TL03IGIZU+PKB%&_S74E:XMV:2D+:I]9X\ M[)YT%7L*L7NZ47\PM]7B[*L2!MG5EFZP)[C,'H\2E:>;.L-!Z8Q3 3JC^_HI MG9&>]Z;&*$V='@W>E6[!$'T+JVS*MPB)-CBD\(;7CX&PQWE1^*.!_:EHZGOS M"%&>P@MB8=K8'L+6H=9/] N)4G77%43(O_+#"[1&3:*>X/5<4O@)=2*(L!W5 M&HBLZ3@OOS:;NP<6_Y1/I[0WDF 1 ,WA$##[DE>2:ZV\12-^*G2FM/%D6\1C M0#TJD7\2^.JQLC\$P([M"GZ57WDCW9TUH>S+*ST6,O'5.S.=$9_ LRC((@00*,]:)-8T(F;'$EOF$.*::E7[6;%Q!T=V8WHM4'L>BZ$LA<9)J0WL6IY4NY MIJ2U9FD]R<^QI9QPGA@.,M$LO=),<@S*>Z-L+3Q)@%6_B,\S;G/I$ M^Q"AXV77\GX*S9)8BD^@5'<* *J,N/I?\39+H_7K(+<#=454 MTF$+89_.ASP'#6'DP6.8P*S$(_H@?]4'1 !;MCE)O&@,\8="4:;*/]D)30,8 M&D?1- [R2;O@"#TK@E]#T0(*^"-CGG]L@C7*B8()-GM]7PV15AZ9@KW M2]:Q$D:*B05*M]X4XO(Q@ YQR9-TD)/@ZY=*#]FRFY'VE)V[ZN*<'N&P1AX% M9156KE6EZ@&>RI+18 :4J!SH6]CRA4,=I5B/\\3ZJ__/?HVPC^(@4H_XI-,' M;.=:O)"E"3Y,4>\?.O3,,CM@IW^LEA,](IA\P$)-X46^3#0\=YP )L+O1K^8 M^,)=[,#$]B7*C+.]7+FQYWZVCS:C3VKJ1I]\1GD\[N;([H"C&":P]>^0D$P( M+DA,BN9]([0CH:H@,)0BNE*S.PSR8<>(,:+0#:,4AEMD=#L TO")&,B8J M-[=$ :V!^8>B!PW1+X7<.\%);!2KKZR.#HG%SL/:; 1*99>$U^:_/$0[&F&T M)42/HWS\OUV4@N#G1'$"F'G;5 @V%8+UE]P;!8(B[0MRK2"[7*VI(*PR$DEA MJ:*J*6O&#&^+^A# 4+*FR.(O6F31U%@T-19-C85A9IT1]@)D2+I=[#JL3$G?'F-$>P/(/ ,VK,83J9S)*KB:D^@P$I#"@ M&6RL]&NFP5=I(07:37RE/3],--->@D1@Y'+2#H4WA"@\Z28'CTM_ENA4(6D/ MG]"WXGR$J72K0L/ !SR("EH3>L1^*D@X5?!1R\<^)\+^"S?A946+ !*2*3 MS3K2LQY*>.J V'2_!G"#W[B3]IE<<<'+'F = J+?C>@*XI46(^I#-;Z9'GG) M?F0)5,BH1MGW-I@3,A! 5Q[O1YX Q]02_,B3]OD!)L+YA8*(4BG13KC&N[$X MI7-(E5Y0^S=%UY"\ 3,3'ZK^233]&=4R5D6SY\E"D$UDQZ;@EK#E4^!TB7G$ M&,H)HA0!6P%L!RO*3%=C'U M5NGIU/?2&L3@5HU\^\A8Z;'ZU6VP?I^1F9==D@]>LPM&59O?M1,!FVNH:OQT'Z.@11[[P1CL@C'%XU!@(N+2+3HC$O6Q@*GCNU6%& M1MDW'.($:T,X%& LM0%S29&1!\DM^;MHA-&9;R MR.R?2U_?3)+>T 3>U^@V+#>M([C[#Y-,X^_NO;5V@W4E0E;:06+'JD/X=A$4S?1)E03-TX!I?+\;ECD=ZTY MYB8JL:]:CP-X.1N\F3VZQG=NH(>1MFOZQ0\6?J)';KH^-XQ;#Q>9DCC0H=^: MY (O6_74C6YT6-!%=>[^V/V4> J;KVUWSXO7MH8F2=OGSQ[1D\M;,+2?Z:AZ._"AQ >%;NX(EL:Q> MJ V*TMKR/PAN KR@,0?V9"+YUH!<4J7=>L)E=3.I:T]"'20" M/ 2@P=!X"C)Z3[FA=[P^ U ,)1W]=N-&7N#'\9P9FX4U:CT@:VRO M+5&36:)1'G!)#?Z7GEX,WMB_5JL=!;X;V5/"]I[5&?A#T%]84MKY$4'@&^:.WG@#Q M2)R+#??C>2['T>!R//9'B5[X/>N*+OSIT(^46=R'<_M=RQE8L]-UBZMW'!2.=G[=/S%_VAB3PK M,@OFVKK%4_=+:^."SEPOE3SW%K+Z[-Y*9B;6:5BF%_F!FUZ6K>=N4&7[%8]] MLQ9Q"IB$UV&2#GPP8=K,F28Q?%6T9WZEB7,6:1.E7]"A_<9==1LXCS M9&(HJ(TXMRV%ICN85@AX)I1AW-/@]#YT.[EU";QBSY\!*_2 MK"]X" D[8^J8QU&8N>:\H'/YD'I'@RP-+3ANFV+="99)LGNZ"$.0^>G3O].\ M$8;D7OEN-"A9^*R1U3DA$(,_SB6/;]\E=?\E.9;"A"+4QFOC-\!SY8&0RX*U MUJ'A"--#0PREC_/";Y5L>W=*D+$PX ?A(;1=EER3BZ_)B:#CUTWJ]Z^0^LV: MCYI8^;Z\VL3*'WH2LOMX#RY4[C2A\CHQ%'8()Z-P!]B3PAL< 7?DL.:8;%S% MO)-9[I4F5?P+;_[J .?=,KH@'+8W@JH[$GW3&!5F!S+!"Y$CESU'DGK5#L=& ME0^?PR,4;\Y&OJ?RQ2%BFD/3B/]7LB65<.2S:$HL!!,^:-U+ 4D$U_U15=TG MN/'7@OI9X@?:R;YK@@$9+>TIXY=;V$#5? 3OQ@->8%Z=)V6HSP%$;G?L"5XY M>K(;#":;H&( MXH128V#D7G;H6W85U Y"(::,V>#2;XR!=6&@D?FA(=YP/, M)>]B![L*/YF- ?--2_0W*(NF)?K!\O,AGI+5!&7>"(:E1E6#8I0U%0& M)!X@N]PB-2:)P(@T0X#A[^+F_\GF*48)"7#YO[J\Q@Q,M9]LB4JKZD4PSQ4O MD Z/J6(+>(6W^7(JM7DIDWR^3?G8I<1TPQA^][#S5*<,Q>/(AH:G=Z,CNO;Q MA-I8/\3$"!FQ'6!H1S0LZM'@G9G.!&>&#PW?2R44)8R$<]O@;=NK"XWP M>6X9O6PP>A&7TH1(G2TE&P<:RU[ M-)9TFY@6\4)4Y;H &*%&^^Y#F,A+MR]8*D6"]<587H\FM\<^JKI[B%FS+KA1R"<8=\$8T)215BM.Q(4R2XLDCV5-I M@;2 )#^W ME)M0=LB?2R,T5,9K_40..Y(L-V1#BL9SWBAKX>/+PI@#Z@8[:^%-RM)K>C,X M-$9"[E!Z,PC(:ZQVY ,2@/5[-"VGM M18?RHU[?0P.4X-V+!#I4Y8<]GL$)Y7NB>Y'!5^7''[Z="L"RY^]B3)0SM->1 M *JTI4FHG69"^7IOKR.!U8.+$YMU( &T\/P95Z7\XO2]C@2 Q?,,(E2B5*TZ M!U3P"[NYHX(U*F-U;_SAC2. "* ]PP:-.&!1E!4:^>6#Y?\#/E4 M!YYL5EBYU:JJ>@2)JC5H \" *'F*"E"Y)D\D#!O3C5B. M(T9"5:ZP8^WYY6>0GT.(2BY*70(PE9K3]4AI5$J"-(=PTNG'[AB *R?/B'.C MH8F.,Z(X_5K0H[D@57MXM:!!K>*3U:8] 6BMWW4BC-P5>]R[0G/E8P,T MHO(YS.$&2_.K/N7>+[T+7#C6 @.:'RB%#A*E!8+% M(WVTT(_XV4)8G)Q@3L U@;FU-*^$ WHH.< &5,A,)U,HK8 M5U->Y [!_(SY&HTK4YW<1TF>':81((@QV.&6Q5$&F\A''TB"" M*]PST,*'D$3R?>.?Y(KOU'81S3Y,IP-!?=&%#L(1[@7GKZ@BCN#8$&$F80RU MPQ3^0K0O$+=DUA345*C?A,=U$KB*@#*/9-MH%YW^A;ADQ#F"""?J5H6RJUE< M);INR3KW##<0-3,5T;BSLPL$80A[BE?S2QQ9"XGUAXR!B$#H^UE$,"D#-[-&GOG,#/8RT?Z M8=QZ^-B4U($._=8D[T?-WC-UHQL=YI:]ZMS]L0LHD6Z;;VUWSXNWMH8F21'N>'_9S5)9.MX^F0]NYZ"?^EZ1EGW(3]OZWZY) M8PG2/7G=?OVJH$Y^Y&^&I9 F^^?]ON2W]BX/8<_?"2LR1[XU[?U.AUG0]K6A MFB+LQA)=Q7&-L9NR%ZB2PTK VS+YW4))DM--B>J\ HG44P$BM?OZ"9%ZTK[8 M$J@EZLYK@H/(:O1&C_&;X^L7JB 69M8KO"ILO?[RX]%II0TAE02D/P";;T?< M!V'0R\;^X*7!FBS>0U^01_PFN?:TBNGBYGQ*QM?AE@?S> HAD-YK9MDH_%) MB_3@QOQ&&!@AO)6+;Y.NPL1NKO6#Y5\>8$T>8(ZC^'SAPE-C.'>"%7[ M0#NIU(^R96KH'2L]5NYL%NA1BOIRD$8FI'0X(J:@,;4^RB03P*0/IE)]RSL# MC*@-M$OD(PAZG5I.:$57BMB5@[AT"]FP6D,BJT)2&C0^15PTWBU#D!XP\XUI MUC.M8J$ ,"0@]G5;2?G2B 5TH(*:&O02>[T>,>[8S\#EO^1T"Q_ -,.=HEM M1(15<@&#;!#'H\'G.0UMCT&H1CGOT#D,NY3=2,K(%2,CDP1C&S7CGA?K?G@D M)[CTO7+#<.X&@6@P.@9;H2;F40,]LL&C&351*/LL;7AG73'A3,J(1G;IR1Z) M929KL5?^Z(NCP8Q88R?;;!*-DKS4%+$M6^L@*W$;F)M]J0^!N4$OWSD,P#NX M9>JT3YMZPZHI)7U4I/TI@?HPXA,10Q!1J=X)9_HKG/@+;=0T<-A7J/C:IC0I565-G7<,8$R2QM!!NL?B>FDN?]!PI M0L2@!2P4;-($-:SXV;6K\FN$CP9M=3W1L1KY4:+'>I1#_<83-PC4T%=FF+@Z MM#=5AVIDPM ?93]/\X4IY]O/IC.[VO2SX:WRW=%$I1@4H\1$*3Z!NOSBC^:) M3AN;Q_;I?I2B"*=??/\W=SKK?U2?YWZC>> F]H5CD]TM-9M' M,Q/[Z?=FD3]S(TN1[ ?O[*O=\#:%GG/.^W%1(V5_R7RYM;2Q#YGZ80*'.[U# MR>NM4/D$;F=BY/^%@6FE@#NO7>>?66CZ8*V M,0A=%;I3^YK_7IO1*Z?K=%]UNN?V\Y?NI?_ZO4;'6FM Q&XF.R@(L]>_7%(Q2]=9 ":BJ+-N 4$BBGZL OSUG]@] M_?/C'Q^N_J$^4+>6!YRO&AXIAY"_50+?^RN6D&^ON3Q9[ IZ?ER>WR@;1V[I M/5>_%.?T.W93U<"70R_RT:"2"_5W[)XNH8SPE=9 J.RKA/O>@^7$G<-P@ +# MND"5'!I44-EMY5X=4V<1;MA.XQ!Z\:SVAUZQBH35;Y?_\^]J>!^L+IEBBF96 M7UY=']Y]3J,<;Z_5VW]5(C2@;[4>^G\.+7YCO:PK\JXHGM#U1_7^,"7AN^N/ MO_VNWE+U5XNEP"[_[V4U[MZ_T;;;_[EDFE&L& HT@E=5W/##NTMF&(_E%K6A M([C2E]YE54I-[-5\YI:PG7]CEK/[E;S?GDG.U\].BE P5\SI^J]P*M2COBRA,*E7?Y>"8CYI4#Z(<$: MTZ@?\)!+8* T._,[[B*70L/:WY/W,$E=_OTK64N5<(N_8GB6_N@^WTZ$)'GD :/*Q8/P::N-P M8J+X&,V5G:?31ODW.P)NF%W1S/4\>S2MP!_;3U[;7WGDSF4?Z= N+NFULE]: MBYSS5UDSUMKU.VT?Z$5L9A7O22CQLXKQRT<3/6<:,/Y;,/3\F MO+&EY1.*,MD*1WPXY0_HZM(T3",CME=/F6Q,GY !B1$RYDXBL2^'?PJ^9US7 MDW ED&$JVNS?$K&4GO)Q/ZX\R*--6\\^-[36B,_ M"/J+% )PY 9%4#M_]-834 FLLCI,C@:7XW$*4KCP>^K*+/SIT(^4 -IV+_#XXC.WL7OV>J9_\\FS^ M/8E6CQBZHT\WD9F'7JOH$.ID__4W+MC]'Q1+V^Y3ZFS=O.Y=HJO(#3GM\[,7 MJX^B?'_W/DO,+/_:S+VQO!/Y[J>6.[;"H><&2_OZB/S219^5& MP5Q;MWCJ?FEM7-#[2:K\I:O/[JUD9F*=HF[V(C]PT\NR]=P-JFR_XK%OHI)N M3T$;KK-I)R??G$Y[6@V44/FZKQ4'L>%42\$-(61D:)=U#1\PA82,IM9D*++#ZE9TB>$"N-UV2EB!X10!8[SF1,H6*=,5*2(ZRP[ MZ7@TT"ZAYP$9$UD*9Z HGFB"3A!>X0WCH)UG74+_X$-*R4ZTP-T#*)MVCP6S MZ=&@@K@IGDL110_XP4=0-GTEGOQ*>CYYHN&&-C1+)SW'J+(Y22:RGXOO:)W! MHQ7KPX"XRSJ)?SI.!TXUK2!?IRVU%>3WF9G']CLF4B:9^)&:^5%LPE@%>F$) MF,X42P='KR>&9;_Y8&)87$SX4I/T:1,3>.FO)499TNI$I\]?V& M_AKE?_&CD4X7,+(KBTP GP5VLGG,#@CD83LC5=.&J:\,SWH,1>_BV2AZ^8+2 M;_9T8I<_RC_9%UBY'.[_EM>7;QY\X^97\8(2H(;V>'\V0: **COE)EB^D\@D M&I=F+'_?-CFL7-$VU[LL+93T?40N+<+Z!)$Y//LU,&[*-LLK#/TN9F)MLP0, MKD8R/'68'DO.QW@;[JG1HB?M"QA*5P/G\ U=*8Q&N2;J6CFE&FR%O0G58"L\ MG02"<6F#K;"_/I#:-PT40!U?G@E>A?#4C#(5V.HY MC5\XV?/.3&>,0O9RHTA?N6=%J4?Y^)!Y+L$Y[\M6-KR6;.%>YIQ&*$2Q!-RD M6Z^^?,?#KMZ7?'4(M?>18=2">KTF*_>]0Z06PZP@5V2L[M;"S_!AXV M6Y/_#XA-ZIDEK9\&L0$&"#VP=)U%>V))I%0Y#3OD'VGY#K&!]4/(0,0QSY(N M/Y*6Z@)&9R5.EO+:U!F,FE_HO]/V!._"V[A\!/#2PNK^Q-*OI17:;69;&+DN MTH2=]>&75H]94;>D-@1]B+.7B?XZ1,>*]M=#PT/M$-G^7T5(5:J[@CMF7D@5 M8<;.3$SDGO*5P='@)T*C<-D5JI7U>B837W1P@%%4 6B6NH$;E2@H^B2&4AX ML[,VA 95/GH'9HYH1 3P6""V0,#Z00+-B ;O$B[GT@(>EN>-'P)]-W55> $/ M[KQI1C ":>EC6S+MFZ*":HL*)$<8XSDA3%00'SZ="=S,0@@'0F=[RUZ^;'M( MM-^WHW =$8LM/S-'KI:2C) MV5+BA=ZU*81I?TNHM$!5?!):139L#H3DDU[](%AR[^!2R) (N50BR&PLB^+- M523Q%R:8$_*QL(8RZE%'C" ;+G$MNA)KZC)ZX6FZH#"XR@\<,@VN1I4]B,(3 M_7Q,?-8_G.87["T[*$\3F)DUA-@%,&8^QW>#@>OWY=YG2KH(.?-1'1P&RP&4 M<#CM4Z['+WJ&X &,"X0+$UT*[RIZX.TGD>LWDTFKBQGX[WB/T@4&YX MJ\PX_^54*82W*WEG?SZ:1\7TCWP82#'L(_M2\=MV/V;T29E9.K \;JLKZ9/M M&%,P8=B"5,4(;XYQ&@NNJL2Q@XR9P0M*L;,[X=B[#A0H3 =PN8.[N ?7YG'7 MY2';G!6L# ZK;QYH=E)KHZPUJ>/$#PE>$L[*2%LRK6TM&AN-AQ]B#YU@?*]F M"L"Q;X1;WU20I0,I*9..Z\YH@>>H02C(%=-]Q Q6%BP\TGX15S)\#]>,8O3J M=G"P%N)QN2F@',C+)CI0UEC>?PG+FU%=UDS-JP>E9C,BJQ*5/X)60T85. S3 MA^HF8&8DRDZ&-B-=JK2\"&(.!U:_%*YE,D!#-U'$*@!% WDNGU)I M9TZ(GTMS("%!"$Z<]&DKS52I_76P2 "H%H[]=]E:L/%5ZY+*E[/!F]FC3W[G M!GH8:?ND7_Q@X2=ZY*9/=<.X]?#1*6$"'?JMB:]O)DG^KJD;W>BPU\E>6R*Q M-M_3[IX7[VD-39*8:<])W[?0L1[J0">WO8GV/#\LJL,[W3YZY^WNZW[B?TE: M]BDW8>_/>9SH\>T&,=1)^[7]._U?KTHFS='@.JT.;8JV]KM>D"Y3>]Z"?1FJ MP>+9:WHX+;EK_2"U!PYGW'%2*[!(H'#3.EG21B:J'T]^@DQ1FU%Q3E 7&@]$SQJCG/679KEA80?$!W6%.U, M-7B]SV"G!L2W3L7,#8KOMQ$* N)+,3H(>"5$HNM"[3/)XG0'/WV67=G1B.WMU5/JRN5G8W;L"8&(+MJK.QH8 MX?W_O%!N R-;F6;V=-S(B$9&?#?[$$8QOL)Q/[P4#^>JI5$*(EXL(DB4$(SU M0] PAYILHVVKR>H]5#Q$IL+$CD2O7[39LJM=L)DP^6#Y37*J=IMJ1DS6IAZC M"H9J\FW5!&YI2/C0>4<4NP,(,MZT?.QIRTC-,)"N&1XHM)F%\^3R<04DA- _ M\)XEA$I,U#VSBDNP?4=RS(&\,R;B T'0%02;^DBFC-3_,.PKXZR)TN#'#G/65@.ZD('AO^2TPD&>;S MX$"F@740EZP:FB^B"YN.!G-"7 >(B[/P%3QW,C-.JP;5.S.=T3HM0:-0"74UPBM3@&,'F]+-IXB_ MJIM=:%?Y4U<'&(ABT=)TPK!9<)?8A#P<\!^=!J*XNAHG' \Q*HMQ4[C*+V;: MQ?\06T@RXTBW()+(]63OP&-8T"CE2Q71!%R.[7,&9>TOVNE[UJ60H$K(_"VR M2R%+.^K\GU^MU]B3"B\]O1B\L7^MUC4*?#>RCT@F?4_'L\"][27N,/ ?4#J= M?=2?VD^*S9\YF5Y::B^9V!]W7J0[WGCPO:>U1GX0]!=^E!(X*,H]\D=O/0%R M3,Y%:3.MC@:7X[$_2O3"[ZDKL_"G0S]2SOFQ.NF<.(]=\A4A=)@M:AB8T:=B MT\5JGO,E&&M;FFV4YD3IIX#!8!?9HYP3QG9VK_Z;+L_FWY-H]8BA._IT$YEY MZ+5&)C!1[X=.]E]_XX+=_T&QM.V*[\[6S>MVUM*V%?ACNQ>G?7[V8O51E._O MWF>)F>5?F[DWEGQ@4CG9^U3\]?](*9AKZQ9/ MW2^MC0LZEK'(]Q^ 9"SAB(X&_U E]!GL7.(_RUCBVZO?T7+V=-,T M[(*:9$XE6(;55;9>F22=VQ8G;I@*9@Y& @X92W*9+F>L%"XZ'3&+WYIJC ?! M]:;LND9EU\#Z,-'P!_F31,O)Q2CO$%T5PTA#(_E' MMHTKO!B)BO20>G#.>5_P=)"FTK.I])10FZ3M[\,Y%3S3#'\ YT#P*WB!)Y;] M$T+7#I#\#)L(N'P&]8%>#4%'GG-"'VLRE89$M.G\!;Q3AD^(P%J.QP?$4:@) M3EQ0UI@2XD0=BI51\^&?Q",0&B)'ZCA""TRCHAL5_1=6T902][-#2$)%A!@D M4!A)-R:FFI?&$5Z-3LB6XHPNT3J?%ZQ4!"20N@%$#[N&MJ,Q %V(V?X?B=R M5!,,>[!\GIDM%G0;)T\/<:R4R"DGX.#:#4%N _5."5!%57+/ 8T36MWG\D-X MS%H5!(\Z%RS:=P&K/R7T8.#4F Y'P3S'5&)M0WAT,XP9=3".9)$J'4 ("2\] MCRBX&J3)A6M._3N 5H0> Q2(/M%(>K"G;OZF3X 3:7W$#XD%AH%Y'3+E'&*" M0N@VO1F-J_@7=16A]W#E.R9]7&PHNRF+,ZI,Z1 X:HRC=6B-Q#,[6Y M98JQ.HBJ(G*(!^("CWVGF9>" ML_34DE7"Q3MK@) K)1,G+L:V*R&9;=E&94QIA2DT-J07)N:5%@@_ZTBP5\IL MU28:3(AC_J09H,Y(7\L(KS8HAOD1VDHN!$-&V=7C6$BZ54&YPZ^!B'64>CD4 M ^TP5#B9D'A,@>3%!PFR7#1#0^/L6M NH$2A04IQ7>F2DMF$0LN#VH MN!6LJW&7M?^W'UZ?..=]F1X+\*Y+;T/D#*% BBNG0Y@-4=RW9CA$E6JU\5:J M]U9B!3<.<(DF@L)T@)*.40!W L1 D4O['1Q:ON(AA%5/B)/F&@#IZM6.<#B] M%$!:[I5@C8\\0:(7$^(9R!.0;S?21!VD*UPT[R]UZ!DXV@J2_:5COZ>C,D6S M$+%Q$7$ !P"V+V/F1D=I$&BTL, MQI;_*NMW&P9&(0[&AE!"3C(DUO86H@8!7JG1 D^J$8VU]\Y,9TVQ\GZT(HQ@ MP1VT)@YW97B 2/1 );WX30V)#;.0H2^&H#T/!+T18KLHCPA##(&G;SS,RCQ, M:Q,IGKH1'PO!5^Q!3SNO6J+501]"B5$#I5F=(2R]0DK)+S-2#)_Y,#!2=;C. M1[V<#=[,'GWL.S?0PTC;Q_SB!PL_T2,W?:0;QJV'STUO5J!#OS7Q]W[6N3CI;Y%E:JGBWEO&V>YE9"3?WKNK0G=J7_/? M:S-ZY72=[JO.Z8G]_*7['+H<#3Y#?W_X[+4 Z/T M63AN=[[Z\FNL94/+'PVFKGV7['B9:%W@Z7@TCX7'7 FY:-P)X-LBP5-^1)N\ M@B_O8?6GM(#'O(M2B)B(;$M.M&L@?N08'#\4"Q^J\ /KL%5M>LR8BX[=@W0, M6J5C-2=.^Z*%#1C-$L"(%T\K!QC@.__X "[WY4=XN<%&HO,DRXG@(];WV49Z_L-4;]1&KS0KJV7@)IC MM_[V_8>K?TC:_UTG? G.ZTZ)_!%W;O\$/+H\; "K./Z#H&MY;7M'@__Y]X=W M_[ONBRQ?J)0I])"&.E967UZ]NT3;-4TEVX:!E_A?DI9]RDW8^W,>)WI\NUG< MUNWF49I-JV]8BLF7_7.9+V1H B\536D;^1#V@MV)B,A'OC?+2M"VM>EU(/?T MH8H]A5!*6M>6R8!W8>ZT@P^Y+3>(LQ=0!&KW+RQ/NZ^?D*1&9\JM4TD;B0+O$H1"0JD4"< (N:1+YC/9,8&0U\HC)50C_$)+H MP$E6PJO79B8F8H=@RHX%"R"NJ& 4^\$X-9X/_VPZ7BJSM78%&,O?D[W2 3%FPUA[ONS6IF9.P=Z5PC2))!*Q!Z&:LPAX&OAJ;2$U-J!.3SJ-4KC?Q(S\<^2HQ38/5 M]NIY6#B--5AQA=V.TLWR;42.-8@#7Q<.BG>H%A7^3?F>#L5R0Z4$3S93H_=J M:,O,C>Y;0UOO6I/SL]1Q(I2:?*WFL(+ZDPB;_3=5U#1,P(4:5>QI"-Y3HE,T MG%X(W]:[6*4>"[D7U$,NE[.IX%[FTO M<8>!_X"N6:/8U'Y2;/7,R0+.2^TE$_OCSHMT?QL/OO>TUL@/@O["CU)R!D7A M0_[HK2?@1^8][QR.!I?CL3]*],+OJ2NS\*=#/U+.^;$ZZ9PXC]W7%2%TF"UJ M&)C1IV+3Q6J>\R52P5R4?@JXTQ?9HYPN8SN[5_]-EV?S[TFT>L30'7VZBGZ2P3U0T,>N#['V MTZVB3A(-TE4)\AAV3S?J#^:V6IQ]5<(@N^*1W#+H_)U++-<<0S'^_DI5\KLJ MOJ# D%]+@/(OY0C+J];<.#RVJ4C!,H5VB\4@U5PU,$IJF@(X..C7QE(6:@AU M"$HM!9%4AR<5#Q'$N1H#SPK%F$K*=9W]H5ER]$TYC2"NOVW#L@*NF [UW8V" MLCP[N)1?**B-F*)K5>-YH4^*V2S]EYX24FFW]'O-P\<1WG.9F(@!X([KLZ (S$HN)[(*EY&SS&( M3:E5D6'Y?1W5$XK0<87D76*_)V3*M.QNX4,89L2RQH1W)DL'IB!,:,"Y#$T[ M0966L/AV LFL3T$R WJ!8^& 1(=C\ZX4ZP[3H8!C0?- MZ,CN:2;,F[BK*BA_];[D&T%%5BP?1"TU\0BNE .Z9BG6"WX"#I1]"(%>G/IO MIG;NZQY0V)2$(;BFU!\05\0S2\$WN@:0\FX#Y[2]^L^$J1_(@?/"LW01H3*N MRP,# YYTK#P=C^84M''AX7F_D")^?/PBK&C4FFQ0_B5 (MPN2Q%\%,V M CP8]X'&I@BX;H+KTXRHK;BD8$?4 >&*W/*.^4?9UB2E-)B<;"B_8HY2BN0@ M0[B:T*H \Z\H,5"BN9J]J0'@?_)(\GE+<%1^[&B;CXQN,'JP4OH )8N@DQJ MDZRS+4ED9W/%3RB>^*'B%0247]Z8C5OT!9?WBI^U:%D(7K5Z)_]_ NR@+9K^ M#>C"_JQJ*%W"!Y%9$AT+:. I]B]FE-V8Q&C*PR4:1*-3<+O"A'?X"T:G0)CM M.Q8/:DJ27@THNN>#TBPDO#H"1_VTXX8&#G$@'3>J:5#9OWX!(3%HJKYI4*DF M' 7-;LI6]H34[$$@^1"2-L"0[Y#6*"\5[PL8,V#TUJ *S(X&\ 9JI'*OK-UE M=2+E)_6I$>R V1=$.WWA_CE/&B)82K1[:PCF$F[UPF,+35RM2NK#.1_KY!M& M4)E7:XR+)\B6$=(1V>32ODJ[#A4.EMXI.IW'!,Z5=.NW MK7Z!'\+=%I:T*/!">.[KV*H&T9>C*5K_EJ)U AP24(XWI=A_E5)L10B7(,N9 M68S*-(LA^D<96L]L,_#K(9^F [\27S&27Z]E)[]PRQ=>6(NHH'T(V0",I+(" M\Y"6!/SBSP1G?<4G?5%2AQI_)!BCKP^@4_:P)#90;(CV;:8^P0?'&2M+XNA- MA,-A;46"UKF T9_A+N&XAY*&@ND"J_+GG+$?Y[ =$-06CGWDH^DRF(=E"^&G M<3 T)7+&MFQ5&2I\=XZ#;&\Q<>S'L<8GKY&[P(?F'&3*YE=7>G<@KX<8H7+@ MR-Y(WK\BI*8[*/1Y:HG:;#Z4C.%. .5Q<$4(CY0+ ">'2,XX[0AQ(9#5(R*4 MI-"@*;1@$&Z[ \T6HH%1?0$*)*\_@[,OU'-@'3-D,&U,!.V!-$&+YAU\K3%N M]8?5Z^X<0D.<%4:SB%@Y#4!!);3:04,8OQ%&N )AK'SE=(:O9+NWCIH%;KA& M5W\YLW\\O1B\L7^M7C$*?#?J#4TRZ7LZMK]_VTO<8>#WIVYTH\.6_4EBICTG M3U!,[2<37]],DMY9+BB6VDLF]L>=%_:%FP^^][36R ^"_L*/$CUR@Y8;Z)NP MES]ZZPFS1_?^SGYC&&F[UU_\8.&G3TGW[89QZ^'F4SD?Z-!?K=1*_HMB.[U. M1IAG$/EH<#D>^Z-$+_R>NC(+?SKT(^6<'ZN3SHGSV"&N"*'#;%'#P(P^%9LN M5O.<+Z6'BJ)9XG])BK.*TD]+(^+=B_.4KW/*V,[NU2]TK('DV_YY$JT<,W=&GF\C,0Z\U,H&)>C]TLO_Z&Q?L_@^*I9UL+;6S MNGF!/[8+=]KG9R]6'T7Y9NY]EIA9KYON:>;>6$:)?/=3RQU;(=-S%T9[!=.< MG[5/SU_TAR;RK/@I&"ECHZ'Q;NW_FR338/#_ U!+ P04 " "2AGM8P:=< MBM0% Z2@ & &-W8V\M,C R,S$R,S%X97@R,60Q+FAT;>U<6W/:.!3^ M*UHZ;9,9;'-)VL109HAA)^R2RR2DW7T4EL!J9J->%G%D0[Z1Q%'" M%!,1YH[3OZR@2J!4[#K.?#ZWYTU;R*DSNG$"%?(CAPN14)LH4NFT=0@\*2:= M=D@51GZ 94+5N\K=Z%?K!%(HICCMM)WB?Y9V+,BBTR;L'B5JP>F[2HCEE$66 M$K';K,6J!3D=B/XBS8,U9T0%;KU6>]F*,2$LFEJ<3I1[;)^,+]S7(Q;2!%W2.;H1 M(8Y>5[,0^)]0R2:O6VGJA'VF4#2HI^B#LC!G4RAWV<)8I-%JN2C< &$\&Y MF -9( ZV0"SR^8Q +1CX]Q]FTI+6W[82- \@V\(2\PA8."F9MHI"_%%(T.\K MD0A'!.')!/0'^H;7M"5ZU*?AF,JLFS?K501LWK11%R1(OMEJ",JY<)DKP3,EBH#, MD:0A*^Y&:['J;'1(R7=44(H_<"]IA]6.4!9RYO77,TLHLNPC5"KF8YY#-P3E M. M X)FBK:TGSX&-35*DHF0H9O^@MSTH%:U(.IPQ1J%-\^?BCQ5[\9^JKU[S>TH MJ?O [=+/K0O[_0,F9&RH_T7-% MWOY&^VTF64*8K^&OW>&5G.*(?<;Z?;41OP///Z$YMP-T3Y 2&&A3++GI+=^= MSF" 26 <)Q)@'R70K=VUK^V!K0,]^[V-#C1-'QIP_'<9+^@#\\7V@,/0PM[2 M I7T 0TB C/B=,::*3"(?,,'ZY/Q+F)Z>GVKTHD^C""Z(63R\?;@Q##$WC+$ M7S/&Z8,A!D,,AA@,,3S*Z^$%Y$$? +H2>2*,<;1 0Q:FB#84L68S#Q*.(Y)L M#SP,,>PM,90_*67T<'"& QSBY/"1($YK]JEAB'7(J#]C#TL*0' M3XB82JP8G531G=TU4XSUR7A)54"E&3SL:?/O #O7LTP=P39NG!+#T8+MAS+KB$H8)G([W9H9IN<'C&&=:U$BF98DF WC,=808/ M^XN&[6>+; !\:*869FKQ7-MF6]T- G:&':[[-][RR9%I"\M=#)SW1OBE%+Q\R# MY04+8^Q_FDHQBXB^#$)(MSAZ7+KK9S4B/T:OKY_@+*)6_EX<5B[?,92'E*\8 MRH.6EQ?%>$JM[, ]GL TPL7W@I&\?4].[,;1\IQT%E;3ZCO9I4CI+4N=OP%0 M2P,$% @ DH9[6#DMIEIZ! =1( !@ !C=V-O+3(P,C,Q,C,Q>&5X M,C-D,2YH=&W=6/MOVS80_E=N#M8'$+V=V)!= \T+#99D1NH@VX^42%M<*5&@ MZ*CN7[\C)3FVVR4=D S) D2VC\=[?"3O.VK\B^.<%ADI4D;AT^SR JA,ESDK M-*2*$8W2FNL,9K(L20&73"DN!!PI3A<,(/#= S<(0]=WG,D8;1VWDV010^2% M R_TPS[X@S@XB/T II?P[F9V_-YJG_Q^//MS>MJXG=X<79P?0\_QO-OHV/-. M9B?-0-_%>3-%BHIK+@LB/._TJ@>]3.LR]KRZKMTZ+-K+].YZ'M"RHJY M5-/>9&PD^&2$3L8YTP32C*B*Z0^]F]F9,T0-S;5@D['7?3:ZB:2KR9CR.ZCT M2K /O9RH!2\<+#N_H?'5J3G46![[_ZZ@DE/)BX0@VU_&!.QS> MBQ1?9&N9;%*+%1-$\SMF;#_@><,#*I:=VEP6VIF3G(M5_';&+O?2/"S8HK/WXZL=L6_,32$-AL?<9N8&>S,WO&*)UQPO8HS3BDK4.'-WC#T MH]'8,XJ(0_D#+%+!B(H3J;/1+BP_RO=ITM#LJW:(X LT;A#>SNOTCT_G1^>S M-WO!H3\*(S>PD;\0 )\<@!0/,5,[@25;7FIFMV$B!<7!\X*RDN$#8[]F"U[A M=#S*TV4B> H?TU0N"XV;%\ZXRDT&P6!4P;$L*IPQ]I*GS./EP?G7LM)\OMJ. M[)9!VN0/6H+.&/ BE:J4BI@=#LD*%)LCC%A?<H#P*;'"130R_A/;+7"I@!&-OO:ZP MR%0=LKJ65@ E+J:D1E: V=!T'^J,IUD' C=34K'$D68N"CX6Q1+CO6XT.K@# MW_GML%5NY-4EP[[1V$JDH4TXJA2!EQ>+N MRV8DA^@@:S:*J>^X_!I7N0VNH3RRU+(3-(1G)5NT:++8)L5=B@-[_I!0;#TS MA*VZ.%O_08.$INL:P93F*1'MT47F;"T>H,$-^%K''90;[+5A6:*UN9!UAV'W MVZD5*>,$&YXO3HV /)BNJ;'IUG09TBFZ8KN M8_RW:_/:"G?=(2"%\QI?_M;O5KS*F*K6=L2K=\^E&3!G*8Y M('-,(R9WDM,6LN'0#?MKGFYDOJ7^YGV*?4$S^1M02P,$% @ DH9[6"M? M/(?9" ^2L !@ !C=V-O+3(P,C,Q,C,Q>&5X,S%D,2YH=&WM6G]3VSH6 M_2K:=/859I(X/^#!.FEF((1MYA7HT#!]^Z=LR;$6V_*3Y(3LIW_W2G;B!-K" M+NVR6SH=(/*5=*5[=.ZY5H9_:;4F64RSD#/R?G;Q@3 9%BG/# D5IP9:E\+$ M9";SG&;D@BLEDH2<*L'FG)!NIWW8[O9Z[4ZK-1K"6..RD\Q\TO=Z1UZOTSL@ MG2._>^CW.N3C!=F[F8WWK?79U7CVCX\3-^W'F],/TS%IM#SO6>S,_?@ MH-WIDIFBF19&R(PFGC>Y;)!&;$SN>]YRN6PO^VVIYM[LVHM-FAQXB92:MYEA MC=$06^ GIVPT3+FA)(RITMR\:]S,SEO'8&&$2?AHZ%6_G6T@V6HT9&)!M%DE M_%TCI6HNLI:1N=_OY&8 /3UXO&-SUUH*9F*_V^G\=9!3QD0V;R4\,OYA^_AX MTZ3$/%ZW2;N95OTAFIA715"0K_^U, MI%R32[XDUS*EV=NF:X'?FBL1O1U8:RW^Q6%H6)[A=Z9%$S&'P='7@5N_[Y8^ M^?W]]'0Z^^5-]]?.H-]M=X=>_EPS;TTTQ(?5L NA12 2859^+!CC&1C\\N:X MU^D/AAX:CI[1C=H&A' G4)T+[^ M='-R.2.S*W)]\V%"NGW:ZA[LT7VO>\C<7T,O>"G.7YV3V?L)^309WUQ/9]/) M)S+Y??S^Y/+O$W(RGA%XW/U;_^"9'7YY0?]GH8V(5JY)9#"Q\?N_[KHZS4@H MLXR'> P=59J8DW.I4GT5" MAS0A*SCNA,.,C)SQD*BS35&B-WL%_M$072,P5EU'3C3MMDG/%&>Q(>$L^M\E%.*/S.56F24*N M:)"^4+BB$Q4AR722\7%V%9/<1UKGCR]J/D]#@-B!TFF!$C?^*GE&W3:8D MI@M.%%\(OH2 ?G_T#%XW?M1KDU.JK4XAZ8K<9G()IVG.$9I"0S1RJ0Q((? B MDP:/N*$B@Y.U(D5F5,'!;8B"U4D0'DI2C(F [8\H ET1F0I[5JS=/0,@#*XU M52LT2>DMMQ%(,S$"N:? $CBQ9QB*,B2[PQZ;_ M$LYW.0@N "@ 1 0J#\<8BNL<. MGQW%S<$TR6.8"NC$2K.K;\(J7QJC_%;S@ MRSTSM2 46;%8!,MB@0, #420FNG]Z^@J,Q.FB3V=9.HFO=HX$NPU_F4#Q\,HH$?+1[/"54 M<1M-B(X($FZ9G .$@D3H&,W1+ 7B0?+!SPPH/I&Z@'Y(24HF+JRYDE"_0;,F M>Q!%Q@$6+E1;^1?SMJXE[L,]7B9N',1J46S:MV,*E(V9 Q;.1) <:GAS\4>O MGC9E='_*"*:LLE@=CV"!R?'G4PI'O5U7UQ+KC&OH!3MM&?_;@&AB,@IIH1_? M!;-" #JQFLGE&5DH& #X #<*60:L>&;'03FWX:6=3,71 M. 3L+@1#>%$M,XI<2C5 $W428HXJ5L4?$"FHVVU,@0]-BZ?!0L6BP %YR[2F MLRQEWY4+@AHI!Q1JF[+#4"IF';"*:\XSR,0)@!&>\!Q1CB:@)AW@X#2('+CR M%7( N;"$W&1!D\(R L:#1Q'6V0O82?V ?EEGW46>NU^E+2X@G+REB=EU;ECW_R/ MM^CGA.;]@N#PWRT([*L@5N&YN>$ I*0ZIC9T@*AX0BZ^I\/6KE'08D8JO4Y_ MM@&&3%-A#.=?(=Q3"0D6GY\)\,\.L@?( W[3R)_P&Q5A=5SX'X4 ]^W1*#+[ MXE3OOVK\FL8_@7(?-8\ ;& AA,55*#@$LTQ=:ZV]Y/06:/D ;E$%'S=>L\44XE1H+N@ F0 HU74+4D UUD<+"8:/L8DJV M?O ER<_)*%\1X2>0TR(%1[,)@>*632#4]A5?B0GW=ATV<2&3!<>\D-%Y^:92 ME03$TSR1*PY/E[%TK$.W$ <(>9:DV7Y)L;.WM<96!V7' '#)52N424)SS?WJ MC_K4R.ZQNR##VU=<,>QEZ8V[VJ6%D56#N]BU+5O7O^CV]N4OMM3N5I];2T5S/P VN&TM8<.^>5^]?DX#*.D+PP=X:;Z[W.KZO/QIV.,6]G^Z MKH/_R85Y1B%,GP&2WX$BSH 0?7)!%:2SWI&]^SJP// L6/L.#I^N_"?YAY@I M&2R0QLC4[[9A)&+?HY$W'?OOQR[!T]X7KI(W*WO1H'%9]D7#Y)*F_.E ^:$N MOD+@^[HXPZ^JO7 ,C&/!(S*YXV&!*8=&5X,S%D,BYH=&WM6O]3VS@6_U>T=+:%F<3.-Q;JI)F!$+:9:X&! M<+OWHVS+L0[;\DIR0NZOW_(_"0]Z7WT>9]G9?!3LSG. M8IH%+"0?IY\_D5 $1N>S(]L0]Z3JM-II)FBFLN,IJX[OALA^S$6N>> MZRX6"V?1=82#E&E*@IA*Q?2'G>OI M:?,0+#37"1L.W.JWM?5%N!P.0CXG2B\3]F$GI7+&LZ86N==MY;H//5UXO&5S MVUSP4,=>N]7ZN9_3,.39K)FP2'O[SN'ANDGR6;QJ$W9IGF0)U7S.<.S:J$'" MJ/1\H>/^]@3W]MP<3:Z_ZR[>HD(X'(,A;@,;14J6-&3H5,[>%HMYK_("(B M(Y$ID?#0L.-O\%-"DT,^Z= AD9"F5\150!.RA.-.&,P8DA,6L-1GLCIH#0)\ MVFT0JL XJ<@9^UZQH)! !K!:<+2"4SX^;_NO&#SL..:;**!22+LE- M)A9PCF8,H,7+SK#[%;S@RS4UM2 T=#(P 9:% D8 &H$A-9, M9Q-"0%5,HD0L5 4IR69<:8G,3K'1^@U>-FK(4)4S=[Q]!0Z<9.HFOM M@[XJPU_F4#Q\(HHX?#1[/"%4,A--B [W$V:8G &$_(2K&,W1+ 7B0?+!SR%0 M?")4 ?V0DJ1(;%AS*:!R@V9%=B&*(0-8V%!MY%_,VZJ6N/=W69FX<1"C0K%I MSXS)43!F%E@X$T%RJ.'-QA^]>MR4T=TI(YBRRF)U/((%)L-G'6\SW\Y3,T!+:#_BS\ M\=CM'N3Y]R+OP?1P!X /)Y8'XQ"P"X4+PHLJD5'D4JH FJB3$'-4AE7\ 9&< MVMW&%'C?M'@:#%0,"BR0-TQK.LM0]FVY(*B14D!O/:5(81L!XL"C""GL..ZGNT2^K MK/L AK,?[Y'DBT)_V8.'<#!=63-4A=&W53?Q*[UI#@VS.P'^ M]''P5Y ,=\.*E^S^WXTC5FNE%.'9E\#R"#;"+">"H) 8K5I*N6?45"@-[?C6 MK:K+_R@@(\'0NU_H$@'L@">VK$O'0;<.2LNKZ\:OZ;QCZ#<1\W# 1M8"&%Q%7 &P2Q3 MUTIK+QB]P5QD-8?)1D8MF3=05>G_*(B4LMB6IO?0!@VAHV(KUO@BG$J-!5T M$R"%&C8A*LB&JDAAX;!19C$E6]_[DN3'9)2OB/ CR&F1A*/9@$ QPR80:O.* MK\2$?;L.FS@7R9QA7LCHK'Q3*4L"8FF>B"6#IXM86-:A&X@#A#Q)TG1>4NS, M/:TVU4'9T0=<,MD,1)+07#&O^J,^-;)[;*_&\-X55PQ[67IC+W5IH4758*]T M3U>&5M*S\+.=OVZ7K<+5P3"0@%THL:9&7 M(_;>.P?O?ZYO63EWM7VUB^7:X!A&?#M8;6/UN;F0-/=\((2;Y@+V[)N7U:OG MU(>JOM"LCS?FVRNN[L[+GSI\T-KVG=[_Z M^4PE9+;.@;D&ZQE*>"+,/8/+QTOO41Z6V"D9S1=:B]1K.S 8,>_5R)N6^??7 MKL)5[IU+Y?6R7CIL;,I]X4 YHRGSOL/3;Y+-LYS#5R@\HY-3_.[:=]'&7^KF M^)8%!:8?\D^H? MV-?C@(,U(K!T/%J_02\!LK>%$-?H_4JLO)!"I*Z?XI7(]VEP,Y.PGA +$B&] M*F/7OOFY^:#4@%@M)CQCS?)S:Z,XL=\NW:A.-II67V7-H4QL6K5((ZA /#H7 M/"S#?GCH='HK>6';6D8+VJ_(FN_<#O\$4$L#!!0 ( )*&>U@.3&F],P4 M )\8 8 8W=C;RTR,#(S,3(S,7AE>#,R9#$N:'1M[5AMD]HV$/XK6S)- MN!G\"I<00YCA@)MC>G?<'+Y)\E&V9:Q&MEQ9'$=_?5=^(4#;:3-S26D;AC%X M):WVY='JD88_&,8L2T@6T@BN_)MKB$2X3FFF()24*)1NF$K %WE.,KBA4C+. MX4*R:$4!'-L\-QW7-6W#& U1UZ0>)#(/NI;[QG)MMP?V&\\Y]UP;[FZ@_>!/ MSLK>T\7$_W@WJZ:]>[BXGD^@95C6^^[$LJ;^M&KHF;8#OB19P103&>&6-;MM M02M1*O3*\N^M1*6\9W$A"FI&*FJ-AEJ"3TJBT3"EBD"8$%E0 M]:[UX%\:?>RAF.)T-+2:WZIO(*+M:!BQ1RC4EM-WK93(%X] MK2&G1'J!4,G@>((_&IDWXV*1*2,F*>-;[Y7/4EK +=W O4A)]JI32?"WH)+% MKP9E[X+]2E$UNJ?HDS((9RM4KFT=5/Y[E>NS#U?SB[G_\H7SVAYT7=,96OES MS7PPT5 W-FH?6<$"QIG:>@F+(IIAAYS*4Y,6$Y MFV@[JV0ZW7.[9C3^]]?+SNE LWAY:-L\@%%E&0UVPJDU%)10NA4QKY-G& M3R!BF(BL$)Q%Y3[R'I\212942O2)9!+,GW DRW,0F(DU946BK\*M[ZJDAH9*B-6TM MT$%S[<$]S854Y8LS..M4,\X[<"EIA#$)/\%[$VY"GZQ61*H.A%3J.'0@7\MB M33 Q2L#>NJ.A">5ZT]:22.3:X_V^RRI:G[&%!I6N$!F0C!;&XHG3+8Q#I5LT MMCK83I3WOX!7*6((@DQYW=?'IK:=LRIN/@:LRAS$:\ZW",,TYQH&.VA(^LN: M2:II3Z$C>1!WI]LFM2I$GW/>CIJW^!A7.TS5&7'>=GL#C;;O^1BUW;U\L Q7 MJ2X)C'#,6I%CHHI..2IF M&;)8+4>%44F+RG6.O=:\S(;(J2RG+)IUA$L?6>W6/*7TE)Q2D8#39F @))87 M(Q2PQX M3[- ;3$7FR:&S;NQD23W CQ^?#(V&+"_9-6[=A+@=K-6=*"I_;&[#X[]1_WJ_2L=LY34,'T&2'Z%$C'%:N;!#9%A NZ;DKSTRCKP+%C["@9?;+TO MLD]CIJY@>(15(O4<$S5!R?'@A5U^OJT+5F']"6?[[-E)@Z;:2$\:)KR(SZW3XX1U27U@<'B0/1[H8\)RMJ5 2/Q'A8\,BC8%&=Y'[?='L[ M9E#)[)*^53?OY57^Z#=02P,$% @ DH9[6$_[F4U+!0 P!@ !@ !C M=V-O+3(P,C,Q,C,Q>&5X,S)D,BYH=&WM6&UO&D<0_BM3HB98XEZ!F!P$"0-6 M4&UCF7.3?%SN]KAM]FZO>XLQ_?6=O1<,M%(;R4YI&\L";G9V=EZ>G7WV!C\8 MQC2-21K0$#[XUU<0BF"=T%1!("E1*-TP%8,OLHRD<$VE9)S#A63AB@(XMMDU M'=VX7;:VC>^^.S0GLR'_N?;Z?E MLK?W%U>S,30,R_K8'EO6Q)^4 QW3=L"7),V98B(EW+*F-PUHQ$IEGF5M-AMS MTS:%7%G^G16KA'% 2_"3DG X2*@B$,1$YE2];]S[ET8/-113 MG X'5OU=ZBY%N!T.0O8 N=IR^KZ1$+EBJ:%$YK7M3/5QIH7#1SJ/QH:%*O8< MV_ZQGY$P9.G*X#127M?L]9Y$DJWBG4R4H7F2 MHH_*()RMT+CVM5_&[Y6A3S]]F%W,_->OG+=VO^V:[L#*GFOE@X4&>K V^\!R MMF2 +<#E4>.+0]6V="BH$O!0QP< M3^_\V>5L//)G\QN$]MWB?G3C@S\?6,M3\='IP;VY,,V>_A?DE^!^FL!C=78QNI@MC_NEJ^AE&8U^/N+;M M/K/SI[=??EGGBD7;0\]F*00B36F@&U9YJ*B8PJ60284\V_@)1 1CD>:"L[ X M1S[BIT21"57GK.@ MP5IBN\2H2!K"]!%/@A0/L;%($I;GVBO\UYIZ:8BII.A-4PMTTER[?T_5@*>[AA!1- /N!(BQ%Z+-RX]7% M(DQBM3));.H?UL[&1)/.6 M>/'X8FPP87_)IW?C9(D'S5K1OB;UQ^'6]+[Z5.'?"^P_&E?G7QF8I:2&Z3- M\@5:Q 2[F0?71 8QN.<%;>D4?>!9L/8"#E]LO:_R3V.FZF!X>54B\1P3+4'! M[N"57?Q]VQ"LW/H#6WN*Z:3A4AZA)PV0&Y+0KX?(-]YTWXO_,B[Z^O79B5=_ M^HB,71\P\#,+*-PB0V2:M);I?4V2K _CF-$(+G><&^?#@8K=N>@(QXN;43W;!]>-\JWVP7WC0+1[A9Z1%35*'D@B MO%-XY$&PL*IYKV>ZG1V!*&5VP?+*5_/%N_[A[U!+ P04 " "2AGM8]QFN M[,\' !R+ %P &-W8V\M,C R,S$R,S%X97@T9#$N:'1M[5I[KG3RWM_BT(#O.4Y3%/X/?!R3$D*BXSGEN(-6<66Z?"IC!01<%R M..%:"RGADQ;)F .THN9VL]5N-Z,@V-M%6KUJDLH[L!FV?PW;47L+HE\[K>U. MU(+S$WA_.>A]<*,/SGJ#?Y\?^F7/+S\='_5@(PC#+YN],#P8'/B.K2;.&VB6 M&V&%RID,P\/3#=A(K2TZ83B=3IO3S:;2XW!P$:8VDUNA5,KP9F*3C;U=:L%/ MSI*]W8Q;!G'*M.'VMXW+P>=@!T=8827?VPWKOW[L4"6SO=U$3,#8F>2_;61, MCT4>6%5T-J/"=G%FB-U+8[X%4Y'8M-.*HK?=@B6)R,>!Y"/;V6[N[,R;M!BG MUVW*;ZVCN6163#C17J :2\YT9ZALVEU>X*Z913UOI'(;C%@FY*SS;B R;N"4 M3^%"92Q_U_ M^-=P+4;ONFZT$?_A2!JW9_DW&S IQDB<>.WZ_7>JK0]O+#+E M;CM#)1/L//R6BJ&PJ+G6;CA$,14OQ=1-'JBS)CL1!M>4PLXZJ4@2GN. 7][L MM*/-[FY( U^2C079Q.@I7'^'<'IGI_VSXZ.#_<'A 7S!SPOHG37A>'#0?&%A M/8?+@\-^[^+H?'!T=@IGGZ%_V+N\.!H<'?;_\@K]HS16C&9+G(D;R[CO'6%Q M1HR]@Y3#2$FIINC9D' 3:U&06X(:@<5.E'UFZ(EQJ]%AD4!G*%@59E MA>26 \L3:OM:(N&1P"@JD]\D/S:4??>&:Z_U?W0<)P0\7UM!88?\U32]XR? M$Z8H1IW35,0I,,V!^VAAZOWLYSGN'RYXH32VHA0_*YUAI@G^B1XB?JK:5]8@ M+U'R^F'U.QW>HP^8D+8TH.[>U&%$7T_YZOQ<=M-!:4QQ3$] S^U 073,&$2B?>._HZ( M(8+WK"BT^B8R! MR!I=];/X8?8 "=^5F-:"UY:GU)#/&L_+IA4B39-I^C^A/ M"><9&TH.Q=RWGD&^N3;0*B8N*0O>8Z#+T/B<_7QP!BC1@!Q:=''RE)F$?85_ M2#5$,^MSR6,+)TQ?<0NELW@:96899JDZXO2^8/JLX@OL(S15I346->SLV' MW^&'#LGGKH3BL"1:)4>O \-E&N )&RB7,1GA76.6WE4;K^AM:.I[T)UY8<2^A;A$2. M0]"K03FMS&L<\U+"(OBO*Q]F[M8TF1PVJRHG2$3D5Y0<1PC]R<%(J'CD?$E_ M6565/AU]7\QCW/D\QKT*%%^12/(B(/MGLK6JP>"A]/B:N)I*4TO@&H;,B#6$ M74/8UR^<%E6MB4_H;%5ASALP\#'HB$ OOR*@5]RHQ=L[*E[NZA2_% O85?." MS;)J<0=FKVN,CSEE(4OC$B5V90)/B52UHE09XS2Q4$@K2AVGS/!Z"3]_[5]_ M>J2Y4I*<7T(@:I-JQBM#0]^@"T>*ZX5DZ%%3[O*)M^UKI'>OF?O*K >%<]*^ M !PC!F7H>['0F#ZHWA*C8<-=Y68*AD_S94XW;E02SGUIQ>F[>ML= MHBEQ73VTB)9>8_R%WGA\QZN%Q4NXUZWXKTCP>V;.Z&/LH.+4:V6-9[&W4EED MX43RT%7OK?*;PS4LX_/28@6'0*"&1Y6:?@VN M[J-.8(_JF#B+3CJW^+LQ_]X+;7=5()"E"0J%K2$; 7AZL?^"L88)=>UW&O.CD;D0^[)6548!$OO-UGL#J6( MLGQ=_%XW=:^"\ "3CU$)5'=8>#.%OSP^<\]/4+>L?FG%\KHC*]P% _YZW./0 M;1'R,6D4#!>7Q2.4*5GN:Y/$!-4J/-!\V(@JP[MOY^[]%U!+ P04 " "2AGM8)8-ESH47 "IHP %@ &-W8V\M M,C R,S$R,S%X97@Y-RYH=&WM/6MSVSB2?P7GK;VQJ_2P[+S&SJ;*D34[KDUL MGZUL;CY=021D84(2'("4HOGUU]T ^- KGAU1<3*:FM@610*-1J/?W7S]7^WV M()GP)! A^WGX_AT+59#'(LE8H 7/X.I,9A,V5&G*$_9>:"VCB+W5,GP0C/6. M.\\[O9.3SG&[_>8UC-5W#ZGDC)UV3UYV3XY/GK'CEV>]YV>GS]GM>W;X8=@_ MHKLO;_K#7VX'=MK;#V_?7?790;O;_7C:[W8OAY?VBV>=XQX;:IX8F4F5\*C; M'5P?L(-)EJ5GW>YL-NO,3CM*/W2'=]U)%D?/NI%21G3"+#QX\QJOP$_!PS>O M8Y%Q%DRX-B+[Q\&'X4_M5W!')K-(O'G=];_MO2,5SM^\#N64F6P>B7\2L=WS\]_.4AZ%,'MJ1&&=GO5[GY8OR MFI8/D_*BLHL[TR+BF9P*''W#W#%\F @:X?0%?*[,"0^F_K&Q2K+VF,1'&GY0^N'GT4T%9D,./QM *]M([0<_W!.MQOYNP"P8-!,?,[:\- #@(53 MG5LHSMSB1RMG&@*SK0TR0D,1!]G=BDC%84P\N!_?[YZ M>S5D/[Y\W1T!DM,5B XBP34\D$W.%W&^"I7;QT@ )T3H7:&D?W-]?_/NZO)B M.+AD'^'G'>O?=-B[X66GP-&.UHBW-[/,J31R)".9S<\F,@Q% M/]]]]>G1R? MGK_NXMT[76=C>WEUW1]<#Z_^/8 M?'\[N+Z_&%[=7+.[0?_FP^U[^(K=PE;W M?]GVQC:TC5]MUW[-32;'\PWK"J5)(SX_DTDD$]$>12KX5!T!V;+]+!, /*,Q M+"LAKKI=*J"!SA*E8QZMHHM>A]DMMTAKCOZ23*LP#Y!)NBFW1@P';X83P=XJ MKD$#&+-+J460*6W880;7D2Q.CL\;7R'-O^V%$?"]\R-<5U\E1D4R)$WG(_S4 M< G8<19V=KO2OHI!*YLWMM:1B*28PM/9A&=,PO^&R83A$D?"P$=DG/"'0:S@ M50<0XTD(MQMF0-D2$P!6 !%DRNF4]'7,X6GXQT ERZ,LU\+.(N)TPA$:0\,_ M:& M] / I7#(Y;;T"5Z0 N9C)4.",P"!%Q#[^6Y82F?M^'K=BKT& \?:+HL M@'M$8CB> 99.9*2,2B?S#BO)%V# X;2 AP#@4*6XV=D$,)#"W@=S-IO(8,)2 MK:8RA+GA/IH?2%[E*6G0@)2K!*4+J"'MM]S /WJS Z5@&&XN8H^F$2+WW(X M/B%B+=4BY0@%NP-D P)I=$ \X UT23;6*F:)2G!9D:05DM(^E@E\D#R">U.E MZ5XW+HY@6 Y\ST(]%O 7W&A$D /&)2PHXC,ZN #,KNCYEC#;%#GC]L)B["2( M8]@VD ,6QX2[N<7;O2#N"-;-I2?L^Q(O@\]@0B1@_5P$M,6]'T^?M1B0"P>D MAB)L.=($4L@CN!\_:?&01[3ICJHLY@\#%44XV51$\Q;;)>NHKJ(IA)>8")0& MZT\B8X>[PLPU M-R'_#8Y:>5 :H\BOK2)])QK\]Z8+GG1VH@K>%:*JLVT*9U?C/RS1+ .TXA<4 MARAJ@8 "#FK*ZX54K\E1^!#++!-B]]K7,@S-*9ZZY34&/C("I7Q%ZUH&!+@O M*%F_*E*@W)U(W*D@"F=AH9W#U%/DQRHI,=T"Z0C*70RGQ:#F!YLV$NPJ3C4/ M\&R.(I@@XY\$[" W*H$+K -,V@O2 M2!^_!_JX!641;9/[?/0K0(CC\!04&YH4U9(JH<1\#O"+3Y79ULX$TL42(2Z6 M+\QG!TAQN!ST.AZCLHD7*V1\CD-8!YZG,E1N1SSXY+8)=@D0-Q8:E2E2%%%E M@%&D5P1KRF=UP%29K W*=K8P.GRL#.Z^2 N](G"3/[+ZFRX2M219RA=:1(C MLK8:CY$0%E=>'"J%JLDR?'!G'I">F9.:7K\!8!HYG-GG8P%PX66X;P0:**$> MIK77N:G2&- SF0D*M@I8-)@'>'>-]BSA 0%HE6H)K&))C4,; E#H:>X0E8Y$ MH74"FH;(8>XCHB_R8B(DM,V6XX#6/A82E]5"D %#(&TRQA_ ,@$#9YDLK)W,":L",T&A;?R,1J2I DY MC&7E.H^JM@G,O@YUUO)R=L5GH0.<&H;"6T>Y08P:]FL>/MCE%WAF'CK2V!1\ M1%/L1NH!7A4+$ M-0B_;3UKKU9M2:TZW9&+[2)$JC; H/U)MH=X^UK6L*XPL0D' 3/.X2^>9Q,K M^NET6H $J!!DI1*SLT>?#G"%H5H& @<_=&Z?ZIWD.IX$_E/#!G&=8[7 C;WR9USSZ:U!U*!&9I5K6?& MY5,D&@*5),Z>)^.^MM8*NX";@(%Q#1-7>1LRYA @1*;>81>P_$< $_-0H%1< MT&<1<^B3 2R 8'0<,40(@PAX\U0L,'F8*A(/UF$V]UP\53-TIGG73;F8BJJR M0C-V>^)\LWII'U98O87UOF&/$# 8*2CGT274Y.E0X[K )E<>X )6G6D4K09U M%JYA N_*@C%L] XN$'CETP4>'_#1Q+H,'!+AP.6"I!^Z"G58.L(<-19NRON, MMG;,+F$:T)% ^.-]*L_8@R156(S'#CF(K=G)) M510,[UJQ*UANG$A@ F3_;I_+7:L,93L95&2>PJ% =X#Q#LMZ(DSI6M;$%V_W M/FB.;O 62[D,:=$8L+!^I:7X#/'["A-:X24GKQ:./>-RNB8?R$8!7+0()IA_ M"2D^BV'1"6'R% 3H7!.$'0[%?@HO/V$,3+[299A-E$+N6GA\"=#GKP-*, N MG6.B[OK_VOQFST>? A]]L2,^>BE- -P"-(B&U,0Z7R$W+_X1EO/2D0-3"EBL ML<84I@\5[LJZ-[',)(PJG-7E7:$CT#FRT3PKDA M6F3XI:,PDK','(.X@T?1,=?NH<(5Y]$#&8EE>EW54U K//>BF)07APQ3J5U^\8*'VIJ4._4_U['2J"O:(@69$,5O M'J4T@9XBX):PID7^3%CLY/CG]QE6&I4W9OSQ19/LR* M>,I8^E*PSMEWJT)/7YN>]QK 4SBG/^Y*UQ=CF5"F.?\)$5&7(AS M"Y>N5LDIL)[;*%(S\K#@4RT;C_E2#'_SQ^( M;:M%NW#+EP;?+3RCFBH4=.FNY!^<:&&S9B-A8X88!("LQ:/0,3]:C4I(M(@$NSY2Q8F0ADT\ F M>-'&36P*+$6(EDKZ;$+9[R[K:R'5"F.F5BB7*:+H,/3V=LME.87"M&Q^3Y$T M;L"H>3C"YGAVJU6.%"L7/(KPS/MRM8-3DT*;SOF MGW!-CTWK\G9/AMQ@55)BI9G0\V=+F6N506LCM0,11>? 9/ D1>Z@V&$;;T?4 M;&.:@SXAM@+*Y7I\&=R]UO;TJ7576MM/A79T5_1T>0_&=*Z;BE15]+?83E2)IQ<% MI"'YU%&+LI6M:ZIP*DI964-3^/6LA>W=&XMG<57.=:L(IJ^"35.<#%@%6OF* MTD)A_,R&".@,^J0%N#G8M/W+!'"%EV/1(4(<-M]*NZJA'G:$NOPL751-N6CGCZ_YWY[ M[EP\*<:B(Q- A,82IA#K0-H\@5[D5BR@&J M,0]<&E*](MZ5JM*0F$>8B=34$I-JH<)*;M&CBM?*U,U55:!?KX>(Z]56YESB M;9O;HQG,/B_W&WA+P$%46&>WS*A'6RF _(XY?8J7/F98+"P&.Y.4:9^6_6^: MOU7DDL$7=/?F :W\J^;B^^>YCX"MZ6U5<79;A +5(1ABV0D^(U\Y=BFA%%E@ MKSHDF68O&"PCQ1UV0'E1NA'/=DSQ.1#"UON6O4]&PH\DPG/K67=X+SSU)8Q_ M:'/MI%.I(O323U2,CAF8%1[' EN?!50TR+B&H6/*<'E%*2XGA&^$1/M\&&X= M^DRE,BD:R]1&QM]&6!%D4;,(N@7+MM9COD*".SA]OQ/ PRH"7(V)1V"!VEX M=$C-)R"8:V$>%()&(L717:2"L>8F2C M:%!2;V13Z%1 Q)&:"_1-P1U8.$)-.83P"ZD7(9^\H)+A?H<].^X=\J/#WBE9 M1I7K/;R^H>G=7I[OY7FE&>WZP]%\Z"386),@./47 .K&IDPHF0G$96LB3WUU M5(9IR+[*E&]2F'=^"IJCEJI[\'A_1+9]1-:U5VO:VL=Z'BRNK'NR6BZ3SJM] MOM%OX4?#8L''MKBH-JB"S[+60&LLL>L8IMZ%>>;:FAD^!IF"609TW(P12ZV' MJPD5E'R!"8!3'N7"U_FD"J&PIW(?)MV?OR\WR23ULJ'SUCC\6\^_M0QBHUI; MJ.3.UESVY%$&5$H93G"^R4ZQ:BS>OLG1A%5 5AMV8V\$A.H)J:J 1#.)]:E( MG#^>N3: *,Q)[#_*'\3V,J$ YM=Y@M'\/Y?2H*C&62@Q:OCT&>MCK/O8O.8CIP=(?/"M3Y4<" M]-A"BN)R*\/2EQ7/M'5=.3?5IC@OO&T%HE0N4FFA?-0((%RK#"M.A>&G,8 GZ@1$/+P^D=>+/U4T3S MLG<(O2HH+EZ_PY-J1H)>?!>!@RN&$T1]J/QB:K$E[-@>%VT[?'VS_U0K3K"K M74:%=2&6!M#FF$$EYK'W5'P#+'%WED!!:DW[SM>64CK#7.B W'%,;^*9#1F$\IPYN M]F5B-:?/=T/F4"G:K-0R5].#-I2%.NC/B\,FMUUY+C,@O0"0Z#-67G?E5C>G MM0/8)VHFIEBWM&W0^0I*&HEL)IR^"E9%QD*^5M!YQE[;4]]-?RQU^33&SA* MK7HCT2'2A0:5WUCWE[2O1$GP)2>'/QZ1!)DAHV&'O9,C%L,:)J;LL>,2T]V[ M<]80&;JQTESCZU06&_LWPN:_"RUROXA-1^=B5?,F.$-%]E;ON6M0M')5WE<) M^IXX_W-+K/G'&EGR'U 9]I[>K5+9L[VG=^_I?:(\<$D1_F;]QBM/<9-]65R+ M]FU'MI_81G_S&_7/N\'@_>!ZR"ZN+]E%_U_7-Q_?#2[_::_=_,1N;]Y=]7]A M/]W'/ W8WZ-_\>W#W"WXUN+N[N1[#Z_N+ MX=7-]3>R]4_(4;!ER?IVSN(YP[>B*;C48>^RL+/[%_*"&=;@Z\S+5R64+ZH@>^TOT6,LLU4XI!+\X^#X@*&. MZ21\\=FD//"?O?ICE0A\V3U/C3CS?_Q)%;^N"E4T(50<\*-5A$$E5GEV-I:? M1;@*IQ7):@'UZ,TT_ O](MQMK^QWW2RL?OGGL%]7T@E$6,+Y;"(ST49\8J? MF>;I>04(AW<';*^S"%+]^RW+/>N(6=&^T%TZ>'-EHY1E<0X5A/@H99;Q8 )7 MBT!7/<15OIC<-^5LF(^L78_C+!:*[3*61R+2'C/B\?(+1:AXK]*"5"R]MNBKG+2]9-\?ILIA.7UZA\F_!=J_ MEXVR@5THQ#;Y=6_DM;U_BQ(=W[&WD5?9W@_ZK<=5R!N&7A6?L46/V,+QN2N' MC6M52LN%1:M? C*:T\L_4LPWPFRU.97#^[8A/M-@;"U2N+UW13J;P$ MA8(W"Z]R^PLRLF]N76"U\I0BFM19ETX/M<,9 7G9-Y-:$84%U#)9[';M>UP# MO01:CFS,CS+-[5!UP;:/ZOTU%E$HZR>][>>/W'OOT-G_;?K/+[ Z\\H>_%;R MG;SJO/ 2>+^]W^TB-O1[+HBV]VK[3/869#TJ"]<\WD2W?Y1H7W1.G^^)]GM? MQ-D<]Y:(=G/\<2DIX2D7WS0???_SH?:IDN&7(NU=?!D! M_)ID&UL4$L! A0#% @ DH9[6!4@X4("5P W>0% !4 ( ! M;S4 &-W8V\M,C R,S$R,S%?9&5F+GAM;%!+ 0(4 Q0 ( )*&>UC .0?5 M!*, (P!"0 5 " :2, !C=V-O+3(P,C,Q,C,Q7VQA8BYX M;6Q02P$"% ,4 " "2AGM80&$!H09\ #KU0@ %0 @ '; M+P$ 8W=C;RTR,#(S,3(S,5]P&UL4$L! A0#% @ DH9[6!/"MQU[ MM0, EI H !4 ( !%*P! &-W8V\M,C R,S$R,S%X,3!K+FAT M;5!+ 0(4 Q0 ( )*&>U@NV3?[H)D '/+ 8 " <)A M!0!C=V-O+3(P,C,Q,C,Q>#$P:S P,RYJ<&=02P$"% ,4 " "2AGM8QN>9 M:^'& !RNA0 %@ @ &8^P4 8W=C;RTR,#(S,3(S,7AE>#$Y M+FAT;5!+ 0(4 Q0 ( )*&>UC!IUR*U 4 #I* 8 " M :W"!@!C=V-O+3(P,C,Q,C,Q>&5X,C%D,2YH=&U02P$"% ,4 " "2AGM8 M.2VF6GH$ !U$@ & @ &WR 8 8W=C;RTR,#(S,3(S,7AE M>#(S9#$N:'1M4$L! A0#% @ DH9[6"M?/(?9" ^2L !@ M ( !9\T& &-W8V\M,C R,S$R,S%X97@S,60Q+FAT;5!+ 0(4 Q0 ( M )*&>UC*S5'T_@@ $@L 8 " 7;6!@!C=V-O+3(P,C,Q M,C,Q>&5X,S%D,BYH=&U02P$"% ,4 " "2AGM8#DQIO3,% "?& & M @ &JWP8 8W=C;RTR,#(S,3(S,7AE>#,R9#$N:'1M4$L! A0# M% @ DH9[6$_[F4U+!0 P!@ !@ ( !$^4& &-W8V\M M,C R,S$R,S%X97@S,F0R+FAT;5!+ 0(4 Q0 ( )*&>UCW&:[LSP< '(L M 7 " 93J!@!C=V-O+3(P,C,Q,C,Q>&5X-&0Q+FAT;5!+ M 0(4 Q0 ( )*&>U@E@V7.A1< *FC 6 " 9CR!@!C K=V-O+3(P,C,Q,C,Q>&5X.3 XML 124 cwco-20231231x10k_htm.xml IDEA: XBRL DOCUMENT 0000928340 us-gaap:RetainedEarningsMember 2023-12-31 0000928340 us-gaap:NoncontrollingInterestMember 2023-12-31 0000928340 us-gaap:AdditionalPaidInCapitalMember 2023-12-31 0000928340 us-gaap:RetainedEarningsMember 2022-12-31 0000928340 us-gaap:NoncontrollingInterestMember 2022-12-31 0000928340 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0000928340 us-gaap:RetainedEarningsMember 2021-12-31 0000928340 us-gaap:NoncontrollingInterestMember 2021-12-31 0000928340 us-gaap:AdditionalPaidInCapitalMember 2021-12-31 0000928340 us-gaap:RedeemablePreferredStockMember us-gaap:PreferredStockMember 2023-12-31 0000928340 us-gaap:CommonStockMember 2023-12-31 0000928340 us-gaap:RedeemablePreferredStockMember us-gaap:PreferredStockMember 2022-12-31 0000928340 us-gaap:CommonStockMember 2022-12-31 0000928340 us-gaap:RedeemablePreferredStockMember us-gaap:PreferredStockMember 2021-12-31 0000928340 us-gaap:CommonStockMember 2021-12-31 0000928340 cwco:EmployeesMember cwco:BelowMarketPriceMember us-gaap:PreferredStockMember 2023-01-01 2023-12-31 0000928340 cwco:EmployeesMember cwco:AtMarketPriceMember us-gaap:CommonStockMember 2023-01-01 2023-12-31 0000928340 cwco:EmployeesMember cwco:AboveMarketPriceMember us-gaap:PreferredStockMember 2023-01-01 2023-12-31 0000928340 cwco:ManagementEmployeesMember cwco:AtMarketPriceMember 2023-01-01 2023-12-31 0000928340 cwco:ManagementEmployeesMember cwco:AboveMarketPriceMember 2023-01-01 2023-12-31 0000928340 cwco:BelowMarketPriceMember 2023-01-01 2023-12-31 0000928340 cwco:AtMarketPriceMember 2023-01-01 2023-12-31 0000928340 cwco:AboveMarketPriceMember 2023-01-01 2023-12-31 0000928340 cwco:EmployeesMember cwco:BelowMarketPriceMember us-gaap:PreferredStockMember 2022-01-01 2022-12-31 0000928340 cwco:EmployeesMember cwco:AtMarketPriceMember us-gaap:CommonStockMember 2022-01-01 2022-12-31 0000928340 cwco:EmployeesMember cwco:AboveMarketPriceMember us-gaap:PreferredStockMember 2022-01-01 2022-12-31 0000928340 cwco:ManagementEmployeesMember cwco:AtMarketPriceMember 2022-01-01 2022-12-31 0000928340 cwco:ManagementEmployeesMember cwco:AboveMarketPriceMember 2022-01-01 2022-12-31 0000928340 cwco:BelowMarketPriceMember 2022-01-01 2022-12-31 0000928340 cwco:AtMarketPriceMember 2022-01-01 2022-12-31 0000928340 cwco:AboveMarketPriceMember 2022-01-01 2022-12-31 0000928340 cwco:NonExecutiveDirectorsSharePlanMember us-gaap:RedeemablePreferredStockMember 2023-01-01 2023-12-31 0000928340 cwco:CommonStockOptionsMember us-gaap:EmployeeStockOptionMember 2023-01-01 2023-12-31 0000928340 cwco:CommonStockOptionsMember us-gaap:EmployeeStockOptionMember 2022-01-01 2022-12-31 0000928340 cwco:NonperformancebasedGrantsMember 2022-01-01 2022-12-31 0000928340 cwco:NonExecutiveDirectorsSharePlanMember 2023-01-01 2023-12-31 0000928340 cwco:NonExecutiveDirectorsSharePlanMember 2022-01-01 2022-12-31 0000928340 cwco:ServicesRevenuesMember us-gaap:TransferredOverTimeMember 2023-01-01 2023-12-31 0000928340 cwco:ServicesRevenuesMember us-gaap:TransferredAtPointInTimeMember 2023-01-01 2023-12-31 0000928340 cwco:ServicesRevenuesMember 2023-01-01 2023-12-31 0000928340 cwco:RetailRevenuesMember 2023-01-01 2023-12-31 0000928340 cwco:OperationsAndMaintenanceMember 2023-01-01 2023-12-31 0000928340 cwco:ManufacturingRevenuesMember 2023-01-01 2023-12-31 0000928340 cwco:DesignAndConsultingServicesMember 2023-01-01 2023-12-31 0000928340 cwco:ConstructionSevicesMember 2023-01-01 2023-12-31 0000928340 cwco:BulkRevenuesMember 2023-01-01 2023-12-31 0000928340 country:VG 2023-01-01 2023-12-31 0000928340 country:US 2023-01-01 2023-12-31 0000928340 country:KY 2023-01-01 2023-12-31 0000928340 country:BS 2023-01-01 2023-12-31 0000928340 cwco:ServicesRevenuesMember us-gaap:TransferredOverTimeMember 2022-01-01 2022-12-31 0000928340 cwco:ServicesRevenuesMember us-gaap:TransferredAtPointInTimeMember 2022-01-01 2022-12-31 0000928340 cwco:ServicesRevenuesMember 2022-01-01 2022-12-31 0000928340 cwco:RetailRevenuesMember 2022-01-01 2022-12-31 0000928340 cwco:OperationsAndMaintenanceMember 2022-01-01 2022-12-31 0000928340 cwco:ManufacturingRevenuesMember 2022-01-01 2022-12-31 0000928340 cwco:DesignAndConsultingServicesMember 2022-01-01 2022-12-31 0000928340 cwco:ConstructionSevicesMember 2022-01-01 2022-12-31 0000928340 cwco:BulkRevenuesMember 2022-01-01 2022-12-31 0000928340 country:VG 2022-01-01 2022-12-31 0000928340 country:US 2022-01-01 2022-12-31 0000928340 country:KY 2022-01-01 2022-12-31 0000928340 country:BS 2022-01-01 2022-12-31 0000928340 srt:ScenarioForecastMember cwco:ContractWithCustomerInProgressMember 2025-01-01 2025-12-31 0000928340 srt:ScenarioForecastMember cwco:ContractWithCustomerInProgressMember 2024-01-01 2024-12-31 0000928340 us-gaap:GeneralAndAdministrativeExpenseMember 2023-01-01 2023-12-31 0000928340 us-gaap:CostOfSalesMember 2023-01-01 2023-12-31 0000928340 us-gaap:GeneralAndAdministrativeExpenseMember 2022-01-01 2022-12-31 0000928340 us-gaap:CostOfSalesMember 2022-01-01 2022-12-31 0000928340 srt:MinimumMember us-gaap:VehiclesMember 2023-12-31 0000928340 srt:MinimumMember us-gaap:FurnitureAndFixturesMember 2023-12-31 0000928340 srt:MinimumMember us-gaap:BuildingMember 2023-12-31 0000928340 srt:MinimumMember cwco:PlantAndEquipmentMember 2023-12-31 0000928340 srt:MinimumMember cwco:LabEquipmentMember 2023-12-31 0000928340 srt:MinimumMember cwco:DistributionSystemsMember 2023-12-31 0000928340 srt:MaximumMember us-gaap:VehiclesMember 2023-12-31 0000928340 srt:MaximumMember us-gaap:FurnitureAndFixturesMember 2023-12-31 0000928340 srt:MaximumMember us-gaap:BuildingMember 2023-12-31 0000928340 srt:MaximumMember cwco:PlantAndEquipmentMember 2023-12-31 0000928340 srt:MaximumMember cwco:LabEquipmentMember 2023-12-31 0000928340 srt:MaximumMember cwco:DistributionSystemsMember 2023-12-31 0000928340 country:US 2023-12-31 0000928340 country:KY 2023-12-31 0000928340 country:BS 2023-12-31 0000928340 country:US 2022-12-31 0000928340 country:KY 2022-12-31 0000928340 country:BS 2022-12-31 0000928340 us-gaap:VehiclesMember 2023-12-31 0000928340 us-gaap:LeaseholdImprovementsMember 2023-12-31 0000928340 us-gaap:LandMember 2023-12-31 0000928340 us-gaap:FurnitureAndFixturesMember 2023-12-31 0000928340 us-gaap:BuildingMember 2023-12-31 0000928340 cwco:PlantAndEquipmentMember 2023-12-31 0000928340 cwco:LabEquipmentMember 2023-12-31 0000928340 cwco:DistributionSystemsMember 2023-12-31 0000928340 us-gaap:VehiclesMember 2022-12-31 0000928340 us-gaap:LeaseholdImprovementsMember 2022-12-31 0000928340 us-gaap:LandMember 2022-12-31 0000928340 us-gaap:FurnitureAndFixturesMember 2022-12-31 0000928340 us-gaap:BuildingMember 2022-12-31 0000928340 cwco:PlantAndEquipmentMember 2022-12-31 0000928340 cwco:LabEquipmentMember 2022-12-31 0000928340 cwco:DistributionSystemsMember 2022-12-31 0000928340 cwco:CapitalizedEngineeringLaborAndMaterialsCostMember 2023-12-31 0000928340 us-gaap:StateAndLocalJurisdictionMember 2023-12-31 0000928340 us-gaap:DomesticCountryMember 2023-12-31 0000928340 us-gaap:SegmentDiscontinuedOperationsMember 2023-12-31 0000928340 us-gaap:SegmentDiscontinuedOperationsMember 2022-12-31 0000928340 us-gaap:ChangeInAccountingMethodAccountedForAsChangeInEstimateMember cwco:ServicesRevenuesMember 2023-01-01 2023-12-31 0000928340 cwco:PercWaterCorporationMember 2022-01-01 2022-12-31 0000928340 cwco:PercWaterCorporationMember 2023-01-04 0000928340 cwco:NSCAguaMember 2018-02-28 0000928340 srt:MinimumMember 2022-02-09 2022-02-09 0000928340 2022-02-09 2022-02-09 0000928340 cwco:WaterStockMember 2023-12-31 0000928340 cwco:SparePartsStockMember 2023-12-31 0000928340 cwco:MaterialRawMember 2023-12-31 0000928340 cwco:ConsumablesStockMember 2023-12-31 0000928340 cwco:WaterStockMember 2022-12-31 0000928340 cwco:SparePartsStockMember 2022-12-31 0000928340 cwco:MaterialRawMember 2022-12-31 0000928340 cwco:ConsumablesStockMember 2022-12-31 0000928340 2022-01-01 2023-12-31 0000928340 us-gaap:ChangeInAccountingMethodAccountedForAsChangeInEstimateMember 2023-01-01 2023-12-31 0000928340 cwco:RameyEnvironmentalComplianceIncMember 2023-11-30 0000928340 cwco:ProfessionalsFeeMember 2023-01-01 2023-12-31 0000928340 cwco:OtherCreditDeviceMember 2023-01-01 2023-12-31 0000928340 cwco:OfficeRentMember 2023-01-01 2023-12-31 0000928340 cwco:InvestorRelationsMember 2023-01-01 2023-12-31 0000928340 cwco:DirectorsFeesAndExpensesMember 2023-01-01 2023-12-31 0000928340 cwco:DepreciationMember 2023-01-01 2023-12-31 0000928340 cwco:ComputerSuppliesSoftwareLicensesMember 2023-01-01 2023-12-31 0000928340 cwco:BusinessDevelopmentExpensesMember 2023-01-01 2023-12-31 0000928340 cwco:BankChargesMember 2023-01-01 2023-12-31 0000928340 cwco:BadDebtExpenseMember 2023-01-01 2023-12-31 0000928340 cwco:AmortizationOfIntangiblesMember 2023-01-01 2023-12-31 0000928340 cwco:ProfessionalsFeeMember 2022-01-01 2022-12-31 0000928340 cwco:OtherCreditDeviceMember 2022-01-01 2022-12-31 0000928340 cwco:OfficeRentMember 2022-01-01 2022-12-31 0000928340 cwco:InvestorRelationsMember 2022-01-01 2022-12-31 0000928340 cwco:DirectorsFeesAndExpensesMember 2022-01-01 2022-12-31 0000928340 cwco:DepreciationMember 2022-01-01 2022-12-31 0000928340 cwco:ComputerSuppliesSoftwareLicensesMember 2022-01-01 2022-12-31 0000928340 cwco:BusinessDevelopmentExpensesMember 2022-01-01 2022-12-31 0000928340 cwco:BankChargesMember 2022-01-01 2022-12-31 0000928340 cwco:AmortizationOfIntangiblesMember 2022-01-01 2022-12-31 0000928340 us-gaap:TradeNamesMember 2023-12-31 0000928340 us-gaap:NoncompeteAgreementsMember 2023-12-31 0000928340 us-gaap:CustomerRelationshipsMember 2023-12-31 0000928340 cwco:ManagementContractsMember 2023-12-31 0000928340 us-gaap:TradeNamesMember 2022-12-31 0000928340 cwco:ManagementContractsMember 2022-12-31 0000928340 cwco:NSCAguaMember cwco:AguasDeRosaritoSapiDeCvMember 2016-08-31 0000928340 us-gaap:EmployeeStockOptionMember 2023-12-31 0000928340 us-gaap:SegmentDiscontinuedOperationsMember cwco:MexicoProjectDevelopmentMember 2023-01-01 2023-12-31 0000928340 us-gaap:SegmentDiscontinuedOperationsMember cwco:MexicoProjectDevelopmentMember 2022-01-01 2022-12-31 0000928340 us-gaap:OtherPostretirementBenefitPlansDefinedBenefitMember 2023-01-01 2023-12-31 0000928340 us-gaap:OtherPostretirementBenefitPlansDefinedBenefitMember 2022-01-01 2022-12-31 0000928340 us-gaap:OtherExpenseMember 2023-01-01 2023-12-31 0000928340 us-gaap:MaintenanceMember 2023-01-01 2023-12-31 0000928340 us-gaap:ElectricityMember 2023-01-01 2023-12-31 0000928340 cwco:SubcontractorAndOtherProjectCostsMember 2023-01-01 2023-12-31 0000928340 cwco:ServicesMember 2023-01-01 2023-12-31 0000928340 cwco:SegmentRetailMember 2023-01-01 2023-12-31 0000928340 cwco:RoyaltiesMember 2023-01-01 2023-12-31 0000928340 cwco:ManufacturingUnitsMember 2023-01-01 2023-12-31 0000928340 cwco:InsuranceMember 2023-01-01 2023-12-31 0000928340 cwco:FuelOilMember 2023-01-01 2023-12-31 0000928340 cwco:EmployeeCostsMember 2023-01-01 2023-12-31 0000928340 cwco:CostOfPlantSalesMember 2023-01-01 2023-12-31 0000928340 cwco:BulkMember 2023-01-01 2023-12-31 0000928340 us-gaap:OtherExpenseMember 2022-01-01 2022-12-31 0000928340 us-gaap:MaintenanceMember 2022-01-01 2022-12-31 0000928340 us-gaap:ElectricityMember 2022-01-01 2022-12-31 0000928340 cwco:SubcontractorAndOtherProjectCostsMember 2022-01-01 2022-12-31 0000928340 cwco:ServicesMember 2022-01-01 2022-12-31 0000928340 cwco:SegmentRetailMember 2022-01-01 2022-12-31 0000928340 cwco:RoyaltiesMember 2022-01-01 2022-12-31 0000928340 cwco:ManufacturingUnitsMember 2022-01-01 2022-12-31 0000928340 cwco:InsuranceMember 2022-01-01 2022-12-31 0000928340 cwco:FuelOilMember 2022-01-01 2022-12-31 0000928340 cwco:EmployeeCostsMember 2022-01-01 2022-12-31 0000928340 cwco:CostOfPlantSalesMember 2022-01-01 2022-12-31 0000928340 cwco:BulkMember 2022-01-01 2022-12-31 0000928340 cwco:ContractWithCustomerInProgressMember 2023-01-01 2023-12-31 0000928340 cwco:PercWaterCorporationMember 2023-01-31 0000928340 us-gaap:CommonClassBMember 2023-12-31 0000928340 us-gaap:CommonClassAMember 2023-12-31 0000928340 us-gaap:CommonClassBMember 2022-12-31 0000928340 us-gaap:CommonClassAMember 2022-12-31 0000928340 cwco:EquityIncentivePlan2008Member 2008-05-14 0000928340 us-gaap:CertificatesOfDepositMember 2023-12-31 0000928340 us-gaap:CertificatesOfDepositMember 2022-12-31 0000928340 currency:USD 2023-12-31 0000928340 currency:KYD 2023-12-31 0000928340 currency:BSD 2023-12-31 0000928340 currency:USD 2022-12-31 0000928340 currency:KYD 2022-12-31 0000928340 currency:BSD 2022-12-31 0000928340 cwco:RameyEnvironmentalComplianceInc.Member 2023-10-31 0000928340 cwco:RameyEnvironmentalComplianceIncMember 2023-11-01 2023-11-30 0000928340 cwco:PercWaterCorporationMember 2023-01-01 2023-01-31 0000928340 cwco:PercWaterCorporationMember 2023-01-01 2023-01-31 0000928340 cwco:RameyEnvironmentalComplianceIncMember 2023-10-01 0000928340 cwco:PercWaterCorporationMember 2023-01-31 0000928340 cwco:PercWaterCorporationMember 2023-01-04 0000928340 cwco:NSCAguaMember 2012-12-31 0000928340 2021-12-31 0000928340 us-gaap:RedeemablePreferredStockMember us-gaap:PreferredStockMember 2022-01-01 2022-12-31 0000928340 us-gaap:RetainedEarningsMember 2022-01-01 2022-12-31 0000928340 us-gaap:NoncontrollingInterestMember 2022-01-01 2022-12-31 0000928340 us-gaap:CommonStockMember 2022-01-01 2022-12-31 0000928340 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-12-31 0000928340 cwco:RameyEnvironmentalComplianceInc.Member us-gaap:TradeNamesMember 2023-10-01 2023-10-31 0000928340 cwco:RameyEnvironmentalComplianceInc.Member us-gaap:NoncompeteAgreementsMember 2023-10-01 2023-10-31 0000928340 cwco:RameyEnvironmentalComplianceInc.Member us-gaap:CustomerRelationshipsMember 2023-10-01 2023-10-31 0000928340 cwco:PercWaterCorporationMember us-gaap:CustomerRelationshipsMember 2019-10-01 2019-10-31 0000928340 us-gaap:TradeNamesMember 2016-02-01 2016-02-29 0000928340 cwco:WSCMember 2023-12-31 0000928340 cwco:WSCMember 2022-12-31 0000928340 cwco:PercWaterCorporationMember 2022-12-31 0000928340 2023-06-30 0000928340 2024-03-20 0000928340 cwco:NSCAguaMember cwco:OptionAgreementMember 2013-05-31 0000928340 cwco:PerformancebasedGrantsMember 2023-01-01 2023-12-31 0000928340 cwco:NonperformancebasedGrantsMember 2023-01-01 2023-12-31 0000928340 cwco:PerformancebasedGrantsMember 2022-01-01 2022-12-31 0000928340 cwco:KalaeloaDesalcoMember 2023-06-02 2023-06-02 0000928340 cwco:NSCAguaMember cwco:SecondPhaseMember 2016-08-22 2016-08-22 0000928340 cwco:NSCAguaMember cwco:FirstPhaseMember 2016-08-22 2016-08-22 0000928340 cwco:NSCAguaMember 2010-05-01 2010-05-31 0000928340 us-gaap:RedeemablePreferredStockMember us-gaap:PreferredStockMember 2023-01-01 2023-12-31 0000928340 us-gaap:RetainedEarningsMember 2023-01-01 2023-12-31 0000928340 us-gaap:NoncontrollingInterestMember 2023-01-01 2023-12-31 0000928340 us-gaap:CommonStockMember 2023-01-01 2023-12-31 0000928340 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-12-31 0000928340 cwco:NSCAguaMember 2016-08-22 2016-08-22 0000928340 cwco:ConsolidatedWaterBahamasMember 2023-12-31 0000928340 cwco:ConsolidatedWaterBahamasMember 2022-12-31 0000928340 cwco:NSCAguaMember 2012-01-01 2012-12-31 0000928340 us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember 2023-12-31 0000928340 us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember 2022-12-31 0000928340 2020-06-29 2020-06-29 0000928340 srt:MinimumMember 2023-01-01 2023-12-31 0000928340 srt:MaximumMember 2023-01-01 2023-12-31 0000928340 cwco:AerexIndustriesIncMember cwco:ManufacturingUnitsMember cwco:GuidelinePublicCompanyMethodMember 2022-01-01 2022-12-31 0000928340 cwco:AerexIndustriesIncMember cwco:ManufacturingUnitsMember cwco:DiscountedCashFlowMethodMember 2022-01-01 2022-12-31 0000928340 cwco:PercWaterCorporationMember 2022-01-01 2022-12-31 0000928340 cwco:AerexIndustriesIncMember cwco:ManufacturingUnitsMember cwco:GuidelinePublicCompanyMethodMember 2021-01-01 2021-06-30 0000928340 cwco:AerexIndustriesIncMember cwco:ManufacturingUnitsMember cwco:DiscountedCashFlowMethodMember 2021-01-01 2021-06-30 0000928340 cwco:AerexIndustriesIncMember cwco:ManufacturingUnitsMember cwco:GuidelinePublicCompanyMethodMember 2020-01-01 2020-12-31 0000928340 cwco:AerexIndustriesIncMember cwco:ManufacturingUnitsMember cwco:DiscountedCashFlowMethodMember 2020-01-01 2020-12-31 0000928340 cwco:AerexIndustriesIncMember cwco:ManufacturingUnitsMember 2021-06-30 0000928340 cwco:AerexIndustriesIncMember cwco:ManufacturingUnitsMember 2022-01-01 2022-12-31 0000928340 cwco:AerexIndustriesIncMember cwco:ManufacturingUnitsMember 2020-01-01 2020-12-31 0000928340 cwco:WaterAndSewerageCorporationMember 2023-01-01 2023-12-31 0000928340 cwco:OneCustomerMember 2023-01-01 2023-12-31 0000928340 cwco:WaterAndSewerageCorporationMember 2022-01-01 2022-12-31 0000928340 cwco:OneCustomerMember 2022-01-01 2022-12-31 0000928340 2022-10-01 2022-12-31 0000928340 2022-07-01 2022-09-30 0000928340 2022-04-01 2022-06-30 0000928340 2022-01-01 2022-03-31 0000928340 2021-10-01 2021-12-31 0000928340 2021-07-01 2021-09-30 0000928340 2021-04-01 2021-06-30 0000928340 2021-01-01 2021-03-31 0000928340 us-gaap:SegmentDiscontinuedOperationsMember cwco:MexicoProjectDevelopmentMember 2023-12-31 0000928340 us-gaap:SegmentDiscontinuedOperationsMember cwco:MexicoProjectDevelopmentMember 2022-12-31 0000928340 2020-08-28 2020-08-28 0000928340 us-gaap:SegmentDiscontinuedOperationsMember 2023-12-31 0000928340 us-gaap:SegmentDiscontinuedOperationsMember 2022-12-31 0000928340 us-gaap:CommonStockMember 2023-01-01 2023-12-31 0000928340 us-gaap:RedeemablePreferredStockMember 2022-01-01 2022-12-31 0000928340 us-gaap:CommonStockMember 2022-01-01 2022-12-31 0000928340 2022-01-01 2022-12-31 0000928340 cwco:NSCAguaMember 2023-07-28 0000928340 cwco:ServicesMember 2023-12-31 0000928340 cwco:SegmentRetailMember 2023-12-31 0000928340 cwco:ManufacturingUnitsMember 2023-12-31 0000928340 cwco:BulkMember 2023-12-31 0000928340 cwco:ServicesMember 2022-12-31 0000928340 cwco:SegmentRetailMember 2022-12-31 0000928340 cwco:ManufacturingUnitsMember 2022-12-31 0000928340 cwco:BulkMember 2022-12-31 0000928340 2023-01-01 2023-12-31 0000928340 us-gaap:RedeemablePreferredStockMember 2023-01-01 2023-12-31 0000928340 2023-12-31 0000928340 2022-12-31 iso4217:USD utr:gal iso4217:MXN pure iso4217:USD shares shares utr:ha 0000928340 --12-31 2023 FY false KY 34383 44297 15322875 15771545 http://fasb.org/us-gaap/2023#UsefulLifeShorterOfTermOfLeaseOrAssetUtilityMember 0.11 0.11 P15Y P4Y P7D P30D P3Y P3Y P45D P20Y 10-K true 2023-12-31 false 0-25248 CONSOLIDATED WATER CO. LTD. 98-0619652 Regatta Office Park Windward Three, 4th Floor, West Bay Road P.O. Box 1114 Grand Cayman KY1-1102 KY 345 945-4277 Common Stock CWCO NASDAQ No No Yes Yes Non-accelerated Filer true false false false false 360491856 15802187 688 Marcum LLP West Palm Beach, Florida 42621898 50711751 38226891 27046182 6044642 5727842 4056370 5643279 21553057 2913722 211517 531480 112714375 92574256 55882521 52529545 495471 3705681 5045771 4550987 1412158 1545430 12861404 10425013 3353185 2818888 2135446 2058384 3407973 1669377 21129288 21129288 218437592 193006849 11604369 8438315 0 403839 3160030 2267583 1572655 1375403 456865 546851 192034 114964 6237011 8803921 317017 315825 364665 389884 23904646 22656585 191190 216117 530780 560306 1827302 1590542 153000 219110 26606918 25242660 0.60 0.60 200000 200000 44297 34383 26578 20630 0.60 0.60 24655000 24655000 15771545 15322875 9462927 9193725 0.60 0.60 145000 145000 0 0 0 92188887 89205159 85148820 61247699 186827212 159667213 5003462 8096976 191830674 167764189 218437592 193006849 180211233 94104972 0 2023 118284128 63749849 61927105 30355123 0 2023 24752366 21070234 -7112 -12704 37167627 9272185 696408 447186 145284 46545 46575 26325 123153 75900 -128000 107461 89944 828313 464810 37995940 9736995 6750014 396739 31245926 9340256 573791 1112913 30672135 8227343 -1086744 -2371049 29585391 5856294 1.95 0.54 -0.07 -0.16 1.88 0.38 1.93 0.54 -0.07 -0.16 1.86 0.38 0.36 0.34 15739056 15290509 15865897 15401653 28635 17181 15243693 9146216 87812432 60603056 8086538 165665423 9295 5577 72597 43558 -49135 0 0 0 -6585 -3951 6585 3951 0 0 0 0 26 15 0 0 211 0 0 226 0 0 0 0 0 5856294 1112913 6969207 3064 1838 0 0 24901 0 0 26739 0 0 0 0 0 5211651 1102475 6314126 0 0 0 0 1417172 0 0 1417172 34383 20630 15322875 9193725 89205159 61247699 8096976 167764189 13309 7985 68864 41319 -49304 0 0 0 -8848 -5309 8848 5309 0 0 0 0 203 122 0 0 1708 0 0 1830 0 0 0 0 0 29585391 573791 30159182 0 368383 221030 1006248 -3667305 -2440027 5656 3394 2575 1544 94826 0 0 99764 0 0 0 0 0 5684270 0 5684270 0 0 0 0 1933666 0 0 1933666 44297 26578 15771545 9462927 92188887 85148820 5003462 191830674 29585391 5856294 573791 1112913 30159182 6969207 377326 2003 102507 -1088747 -2096230 6576454 6187308 -524999 -4220 408489 -128000 1933666 1417172 7112 12704 169728 102225 303000 272700 10970521 -303125 18639335 2423761 891405 3387011 755391 3365747 3161386 6756433 2566910 -8290043 -5205 -5208 1192 -267821 9113731 23151748 -1142969 -1819943 7970762 21331805 2518493 5018493 5047884 7542761 20808 61725 2440027 3419916 -10887019 -4981036 5472790 5145742 14228 11078 1102475 -1830 -226 99764 26739 135481 72091 -5524565 -6304873 -8440822 10045896 50711751 40358059 442252 750048 91283 442252 42621898 50711751 <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 “Company”) supply potable water, treat wastewater and 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> <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 revenue 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 revenue recognition on construction and manufacturing contracts. 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’s (i) wholly-owned subsidiaries, Aerex Industries, Inc. (“Aerex”), Aquilex, Inc. (“Aquilex”), Cayman Water Company Limited (“Cayman Water”), Consolidated Water Cooperatief, U.A. (“CW-Cooperatief”), Consolidated Water U.S. Holdings, Inc. (“CW-Holdings”), DesalCo Limited (“DesalCo”), Kalaeloa Desalco LLC (“Kalaeloa Desalco”), Ocean Conversion (Cayman) Limited (“OC-Cayman”), PERC Water Corporation ("PERC") and Ramey Environmental Compliance, Inc. (“REC”); and (ii) majority-owned subsidiaries Consolidated Water (Bahamas) Ltd. (“CW-Bahamas”), N.S.C. Agua, S.A. de C.V. (“NSC”), and Aguas de Rosarito S.A.P.I. de C.V. (“AdR”). The Company’s investment in its affiliate Ocean Conversion (BVI) Ltd. (“OC-BVI”) 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;">In January 2023, as a result of CW-Holdings' exercise of a call option in October 2022, CW-Holdings purchased the remaining </span><span style="background:#ffffff;">39%</span><span style="background:#ffffff;"> ownership interest in PERC for </span><span style="background:#ffffff;">$2.4</span><span style="background:#ffffff;"> million in cash, and </span><span style="background:#ffffff;">368,383</span><span style="background:#ffffff;"> shares of the Company’s common stock having a value of approximately </span><span style="background:#ffffff;">$5.36</span><span style="background:#ffffff;"> million based upon the opening trading price of the Company’s common stock on The Nasdaq Global Market on the date of the transaction. After giving effect to this purchase, CW-Holdings owns </span><span style="background:#ffffff;">100%</span><span style="background:#ffffff;"> of the outstanding capital stock of PERC.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In September 2021, Kalaeloa Desalco was formed to pursue a project in Oahu, Hawaii. On June 2, 2023, Kalaeloa Desalco signed a definitive agreement with the Honolulu Board of Water Supply to design, build, operate and maintain a 1.7 million gallons per day seawater reverse osmosis desalination plant in Oahu, Hawaii.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Effective October 1, 2023, the Company purchased, through its wholly-owned subsidiary PERC, a 100% ownership interest in Ramey Environmental Compliance, Inc., a Colorado company that operates and maintains water and wastewater treatment facilities and provides technical services to clients throughout the Rocky Mountain and Eastern Plains Regions of Colorado. PERC acquired REC in November 2023 for approximately $4.1 million and recorded goodwill and intangible assets from this acquisition of $2,436,391 and $1,108,390 respectively.</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> The Company’s reporting currency is the United States dollar (“US$”). The functional currency of the Company and its foreign operating 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. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Net foreign currency gains arising from transactions and re-measurements were $84,678 and $41,750 for the years ended December 31, 2023 and 2022, respectively, and are included in “Other income - Other” 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 0pt 12pt 0pt;"><b style="font-weight:bold;">Cash and cash equivalents:</b> Cash and cash equivalents consist of demand deposits at banks and certificates of deposit at banks with an original maturity of three months or less. Cash and cash equivalents as of December 31, 2023 and 2022 include $5.1 million and $5.0 million, respectively, of certificates of deposit with an original maturity of three 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 31, 2023, the Company had deposits in U.S. banks in excess of federally insured limits of approximately $16.9 million. As of December 31, 2023, the Company held cash in foreign bank accounts of approximately $24.2 million.</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’s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of The Bahamas. The equivalent United States dollar cash balances for deposits held in The Bahamas as of December 31, 2023 and 2022 were approximately $3.0 million and $5.7 million, respectively.</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:</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></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;">Allowance for credit losses</b><span style="background:#ffffff;">: </span>The allowance for credit losses is the Company’s best estimate of the amount of probable credit losses in the Company’s existing accounts receivable and contract assets balances. The Company determines the <span style="background:#ffffff;">current expected credit losses</span> based on historical loss experience, current conditions, and reasonable and supportable forecasts. The Company also considers the nature of the financial asset, the credit quality of the counterparty, and other relevant factors.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Past due balances are reviewed individually for collectability. Account balances are charged off against the allowance for credit losses 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 consists of 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 (i) raw materials purchased for specific manufacturing contracts that are valued at cost on the first-in, first-out basis; and (ii) potable water held in the Company’s reservoirs that is valued at the lower of the average cost of producing water during the 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’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, which is recognized over time using the input method based on cost incurred. </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 </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:12.0pt;text-align:justify;margin:0pt;">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 is 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;">​</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’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;">​</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;">​</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;">​</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;">​</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;">    </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;"> </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;"> </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;"> </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;"> </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;"> </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;"><span style="-sec-ix-hidden:Hidden_jLx-fF49dUu-UjgTcmSitg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Shorter of 5 years or lease term</span></span></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;"> </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;">​</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 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, 2023 or 2022.</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 assets and liabilities of the acquired business as of the date of acquisition. Goodwill and intangible assets recorded as a result of a business combination 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 year. Management identifies the Company’s reporting units for goodwill impairment testing purposes, which consist of Cayman Water, the bulk segment (which is comprised of CW-Bahamas and OC-Cayman), PERC, and the manufacturing segment (i.e., Aerex), 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 these fair values to the carrying amounts of the reporting units. To the extent the carrying amount of a 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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">For the year ended December 31, 2023, the Company elected to assess qualitative factors to determine whether it was necessary to perform the quantitative goodwill impairment testing that was conducted in prior years for the reporting units. The Company assessed the relevant events and circumstances to evaluate whether it is more likely than not that the fair values of such reporting units are less than their carrying values. The events and circumstances assessed for each reporting unit included macroeconomic conditions, industry and market conditions, cost factors, overall financial performance, and other relevant events. Based upon this qualitative assessment, the Company determined that it is more likely than not that the fair values of its reporting units exceeded their carrying values as of December 31, 2023.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">For the year ended December 31, 2022, the Company elected to assess qualitative factors to determine whether it was necessary to perform the quantitative goodwill impairment testing conducted in prior years for all reporting units other than the manufacturing reporting unit. The Company assessed relevant events and circumstances to evaluate whether it is more likely than not that the fair values of such reporting units are less than their carrying values. The events and circumstances assessed for each reporting unit included macroeconomic conditions, industry and market conditions, cost factors, overall financial performance, and other relevant events. Based upon this qualitative assessment the Company determined that it was more likely than not that the fair values of its Cayman Water and bulk segment reporting units exceeded their carrying values as of December 31, 2022. Based upon the Company’s negotiated, arms-length purchase of the remaining 39% equity interest in PERC from its minority shareholders for $7.8 million in January 2023, the fair value of the Company’s PERC reporting unit exceeded its carrying value by 79% as of December 31, 2022.</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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Due to the factors discussed in the following paragraphs, the Company elected to test the goodwill associated with its manufacturing reporting unit for possible impairment for 2022 using the quantitative tests applied in prior years.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Approximately 80% of Aerex’s revenue, and 89% of Aerex’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’s revenue from this customer had 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’s future cash flows. Such projections assumed, in part, that Aerex’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’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;"><span style="visibility:hidden;">​</span></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. The Company’s updated sales estimate for this customer based on this new information was substantially below the </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">anticipated sales to this customer for 2022 and subsequent years that the Company used in the discounted cash flow projections it prepared for purposes of testing its Manufacturing reporting unit’s goodwill for possible impairment as of December 31, 2020. Furthermore, Aerex’s efforts to replace the revenue previously generated from this customer with revenue from existing and new customers were adversely impacted by the negative economic conditions (caused in part by the COVID-19 pandemic). These negative economic conditions also increased Aerex’s raw material costs, resulted in raw material shortages and extended delivery times for such materials, and adversely affected the overall financial condition of Aerex’s current and prospective customers. Accordingly, in light of this new information from Aerex’s former major customer, and the on-going weak economic conditions that the Company believed would continue through 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 segment’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;">For the year ended December 31, 2022, the Company estimated the fair value of its manufacturing reporting unit 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. The Company also estimated the fair value of its manufacturing reporting unit for the year ended December 31, 2022 by applying the guideline public company method. The Company weighted the fair values estimated for its manufacturing reporting unit under each method and summed such weighted fair values to estimate the overall fair value for the reporting unit. The respective weightings the Company applied to each method for the year ended December 31, 2022 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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The fair value the Company estimated for its manufacturing reporting unit exceeded its carrying amount by 63% as of December 31, 2022.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></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;">​</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’ contract with the Water and Sewerage Corporation of The Bahamas (“WSC”) 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 31, 2023 and 2022. Accumulated amortization for these costs was approximately $3.1 million and $2.9 million as of December 31, 2023 and 2022, respectively. Amortization expense for these costs was $179,353 for the years ended December 31, 2023 and 2022.</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;">​</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 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 </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">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;">​</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;">​</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’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;">​</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’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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:72.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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.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-size:8pt;visibility:hidden;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width: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;">Year Ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:72.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-size:8pt;visibility:hidden;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </span></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;">2023</b></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;">    </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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.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;">Retail revenue</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;">​</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;"> 30,158,051</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;">​</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,954,013</p></td></tr><tr><td style="vertical-align:bottom;width:72.89%;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: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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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: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;"> 34,595,058</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;">​</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;"> 32,991,066</p></td></tr><tr><td style="vertical-align:bottom;width:72.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;">Services revenue</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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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;"> 97,966,650</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;">​</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,835,428</p></td></tr><tr><td style="vertical-align:bottom;width:72.89%;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: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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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;"> </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;"> 17,491,474</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;">​</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;"> </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,324,465</p></td></tr><tr><td style="vertical-align:bottom;width:72.89%;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: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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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;"> 180,211,233</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;">​</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;"> 94,104,972</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Services revenue consists 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;background:#ffff00;">​</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:73.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;">​</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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</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:8pt;margin:0pt 0pt 0.05pt 0pt;">    </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.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;">Construction revenue</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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 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;"> 77,306,704</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;">​</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 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;"> 11,616,274</p></td></tr><tr><td style="vertical-align:bottom;width:73.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operations and maintenance revenue</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 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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 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;"> 19,368,365</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;">​</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 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;"> 14,152,158</p></td></tr><tr><td style="vertical-align:bottom;width:73.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;">Design and consulting revenue</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 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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 0pt 0.05pt 0pt;"> </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,291,581</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;">​</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 0pt 0.05pt 0pt;"> </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,066,996</p></td></tr><tr><td style="vertical-align:bottom;width:73.09%;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 services revenue</b></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 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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 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;"> 97,966,650</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;">​</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 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;"> 28,835,428</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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt;">Retail revenue</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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin: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. Customers are billed 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.</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;">​</span></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’s premises. The amount of water supplied is determined and invoiced based upon water meter readings performed at the end of each month. All retail water contracts are month-to-month contracts. The Company has elected the “right to invoice” 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, recognizing this revenue from the transfer of goods or services to customers at a point in time.</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 utilities 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 10pt 0pt;">OC-Cayman provides bulk water to the Water Authority-Cayman (“WAC”), 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’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 (“WSC”), which distributes such water through its own pipeline system to residential, commercial and tourist properties on the island of New Providence.</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 “right to invoice” 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, recognizing this revenue from the transfer of goods or services to customers at a point in time.</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 designs, builds, sells, operates and maintains, and provides consulting services related to water, wastewater and water reuse infrastructure through PERC. All of PERC's customers are companies or governmental entities located in the United States. Effective October 2023, PERC acquired REC, a company that provides operations and maintenance and consulting services to companies and governmental entities located in the United States.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company also 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, through Aerex, is a custom and specialty manufacturer of systems and products applicable to commercial, municipal and industrial water production and treatment. Substantially all of Aerex’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, operations and maintenance, design and consulting revenue from PERC and DesalCo and generates manufacturing revenue from Aerex. The Company also generates operations and maintenance and consulting revenue from REC.</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 custom/specialized manufacturing contracts </span>over time under the input method using costs incurred (which represents work performed) to date relative to the total estimated costs at completion to measure progress toward satisfying a contract’s performance obligations as such measure best reflects the transfer of control of the promised good to the customer. Contract costs include labor, materials, subcontractor costs and other expenses. 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 costs to be incurred 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 percentage of total estimated revenue that incurred costs to date comprise of estimated total contract costs. Due to the extended time it may take to complete many of the Company’s contracts and the scope and nature of the work required to be performed on those contracts, the estimations of total revenue and costs at completion are complicated and subject to many variables and, accordingly, are subject to changes. When adjustments in estimated total contract revenue or estimated total contract costs are required, any changes from prior estimates are recognized in the current period for the inception-to-date effect of such changes. 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;">During the year ended December 31, 2023, the Company adjusted its prior year estimates of the total contract costs for two of its construction contracts. These changes in accounting estimates resulted in an increase in the services segment’s income from operations and the Company’s consolidated net income by $2,356,439 and $1,750,750, respectively, for the year ended December 31, 2023.<span style="color:#0000ff;"> </span>This adjustment increased basic and <span style="-sec-ix-hidden:Hidden_OT-T-OzwT0yRZ6o2fA_oLA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">diluted</span></span> earnings per share by $0.11 for the year ended December 31, 2023.</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 “right to invoice” practical expedient for revenue recognition on its operations and maintenance, design and consulting contracts and recognizes revenue in the amount to which the Company has a right to invoice, recognizing this revenue from the transfer of goods or services to customers at a point in time. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">During the years ended December 31, 2023 and 2022, the Company recognized $77,411,792 and $14,146,271, respectively, of its services revenue from the transfer of goods or services to customers over time. The remaining services revenue of $20,554,858 and $14,689,157, respectively, was recognized from the transfer of goods or services to customers at a point in time. During the years ended December 31, 2023 and 2022, the Company recognized all of its manufacturing revenue from the transfer of goods or services to customers over time.</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;">The Company does not disclose the value of unsatisfied performance obligations for (i) contracts with an original expected length of one year or less and (ii) 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;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></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 2022 have been reclassified to conform to the current year’s presentation.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;">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 revenue 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 revenue recognition on construction and manufacturing contracts. 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’s (i) wholly-owned subsidiaries, Aerex Industries, Inc. (“Aerex”), Aquilex, Inc. (“Aquilex”), Cayman Water Company Limited (“Cayman Water”), Consolidated Water Cooperatief, U.A. (“CW-Cooperatief”), Consolidated Water U.S. Holdings, Inc. (“CW-Holdings”), DesalCo Limited (“DesalCo”), Kalaeloa Desalco LLC (“Kalaeloa Desalco”), Ocean Conversion (Cayman) Limited (“OC-Cayman”), PERC Water Corporation ("PERC") and Ramey Environmental Compliance, Inc. (“REC”); and (ii) majority-owned subsidiaries Consolidated Water (Bahamas) Ltd. (“CW-Bahamas”), N.S.C. Agua, S.A. de C.V. (“NSC”), and Aguas de Rosarito S.A.P.I. de C.V. (“AdR”). The Company’s investment in its affiliate Ocean Conversion (BVI) Ltd. (“OC-BVI”) 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;">In January 2023, as a result of CW-Holdings' exercise of a call option in October 2022, CW-Holdings purchased the remaining </span><span style="background:#ffffff;">39%</span><span style="background:#ffffff;"> ownership interest in PERC for </span><span style="background:#ffffff;">$2.4</span><span style="background:#ffffff;"> million in cash, and </span><span style="background:#ffffff;">368,383</span><span style="background:#ffffff;"> shares of the Company’s common stock having a value of approximately </span><span style="background:#ffffff;">$5.36</span><span style="background:#ffffff;"> million based upon the opening trading price of the Company’s common stock on The Nasdaq Global Market on the date of the transaction. After giving effect to this purchase, CW-Holdings owns </span><span style="background:#ffffff;">100%</span><span style="background:#ffffff;"> of the outstanding capital stock of PERC.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In September 2021, Kalaeloa Desalco was formed to pursue a project in Oahu, Hawaii. On June 2, 2023, Kalaeloa Desalco signed a definitive agreement with the Honolulu Board of Water Supply to design, build, operate and maintain a 1.7 million gallons per day seawater reverse osmosis desalination plant in Oahu, Hawaii.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Effective October 1, 2023, the Company purchased, through its wholly-owned subsidiary PERC, a 100% ownership interest in Ramey Environmental Compliance, Inc., a Colorado company that operates and maintains water and wastewater treatment facilities and provides technical services to clients throughout the Rocky Mountain and Eastern Plains Regions of Colorado. PERC acquired REC in November 2023 for approximately $4.1 million and recorded goodwill and intangible assets from this acquisition of $2,436,391 and $1,108,390 respectively.</p> 0.39 2400000 368383 5360000 1 1700000 1 4100000 2436391 1108390 <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> The Company’s reporting currency is the United States dollar (“US$”). The functional currency of the Company and its foreign operating 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. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Net foreign currency gains arising from transactions and re-measurements were $84,678 and $41,750 for the years ended December 31, 2023 and 2022, respectively, and are included in “Other income - Other” in the accompanying consolidated statements of income.</p> 84678 41750 <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;">Cash and cash equivalents:</b> Cash and cash equivalents consist of demand deposits at banks and certificates of deposit at banks with an original maturity of three months or less. Cash and cash equivalents as of December 31, 2023 and 2022 include $5.1 million and $5.0 million, respectively, of certificates of deposit with an original maturity of three 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 31, 2023, the Company had deposits in U.S. banks in excess of federally insured limits of approximately $16.9 million. As of December 31, 2023, the Company held cash in foreign bank accounts of approximately $24.2 million.</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’s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of The Bahamas. The equivalent United States dollar cash balances for deposits held in The Bahamas as of December 31, 2023 and 2022 were approximately $3.0 million and $5.7 million, respectively.</p> 5100000 5000000.0 16900000 24200000 3000000.0 5700000 <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:</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></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;">Allowance for credit losses</b><span style="background:#ffffff;">: </span>The allowance for credit losses is the Company’s best estimate of the amount of probable credit losses in the Company’s existing accounts receivable and contract assets balances. The Company determines the <span style="background:#ffffff;">current expected credit losses</span> based on historical loss experience, current conditions, and reasonable and supportable forecasts. The Company also considers the nature of the financial asset, the credit quality of the counterparty, and other relevant factors.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Past due balances are reviewed individually for collectability. Account balances are charged off against the allowance for credit losses 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 consists of 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 (i) raw materials purchased for specific manufacturing contracts that are valued at cost on the first-in, first-out basis; and (ii) potable water held in the Company’s reservoirs that is valued at the lower of the average cost of producing water during the 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’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, which is recognized over time using the input method based on cost incurred. </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 </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:12.0pt;text-align:justify;margin:0pt;">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 is 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;">​</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’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;">​</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;">​</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;">​</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;">​</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;">    </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;"> </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;"> </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;"> </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;"> </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;"> </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;"><span style="-sec-ix-hidden:Hidden_jLx-fF49dUu-UjgTcmSitg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Shorter of 5 years or lease term</span></span></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;"> </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;">​</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 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, 2023 or 2022.</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;">​</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;">​</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;">​</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;">​</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;">    </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;"> </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;"> </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;"> </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;"> </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;"> </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;"><span style="-sec-ix-hidden:Hidden_jLx-fF49dUu-UjgTcmSitg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Shorter of 5 years or lease term</span></span></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;"> </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> P5Y P40Y P4Y P40Y P3Y P40Y P3Y P10Y P3Y P10Y P5Y P10Y 0 0 <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 assets and liabilities of the acquired business as of the date of acquisition. Goodwill and intangible assets recorded as a result of a business combination 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 year. Management identifies the Company’s reporting units for goodwill impairment testing purposes, which consist of Cayman Water, the bulk segment (which is comprised of CW-Bahamas and OC-Cayman), PERC, and the manufacturing segment (i.e., Aerex), 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 these fair values to the carrying amounts of the reporting units. To the extent the carrying amount of a 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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">For the year ended December 31, 2023, the Company elected to assess qualitative factors to determine whether it was necessary to perform the quantitative goodwill impairment testing that was conducted in prior years for the reporting units. The Company assessed the relevant events and circumstances to evaluate whether it is more likely than not that the fair values of such reporting units are less than their carrying values. The events and circumstances assessed for each reporting unit included macroeconomic conditions, industry and market conditions, cost factors, overall financial performance, and other relevant events. Based upon this qualitative assessment, the Company determined that it is more likely than not that the fair values of its reporting units exceeded their carrying values as of December 31, 2023.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">For the year ended December 31, 2022, the Company elected to assess qualitative factors to determine whether it was necessary to perform the quantitative goodwill impairment testing conducted in prior years for all reporting units other than the manufacturing reporting unit. The Company assessed relevant events and circumstances to evaluate whether it is more likely than not that the fair values of such reporting units are less than their carrying values. The events and circumstances assessed for each reporting unit included macroeconomic conditions, industry and market conditions, cost factors, overall financial performance, and other relevant events. Based upon this qualitative assessment the Company determined that it was more likely than not that the fair values of its Cayman Water and bulk segment reporting units exceeded their carrying values as of December 31, 2022. Based upon the Company’s negotiated, arms-length purchase of the remaining 39% equity interest in PERC from its minority shareholders for $7.8 million in January 2023, the fair value of the Company’s PERC reporting unit exceeded its carrying value by 79% as of December 31, 2022.</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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Due to the factors discussed in the following paragraphs, the Company elected to test the goodwill associated with its manufacturing reporting unit for possible impairment for 2022 using the quantitative tests applied in prior years.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Approximately 80% of Aerex’s revenue, and 89% of Aerex’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’s revenue from this customer had 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’s future cash flows. Such projections assumed, in part, that Aerex’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’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;"><span style="visibility:hidden;">​</span></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. The Company’s updated sales estimate for this customer based on this new information was substantially below the </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">anticipated sales to this customer for 2022 and subsequent years that the Company used in the discounted cash flow projections it prepared for purposes of testing its Manufacturing reporting unit’s goodwill for possible impairment as of December 31, 2020. Furthermore, Aerex’s efforts to replace the revenue previously generated from this customer with revenue from existing and new customers were adversely impacted by the negative economic conditions (caused in part by the COVID-19 pandemic). These negative economic conditions also increased Aerex’s raw material costs, resulted in raw material shortages and extended delivery times for such materials, and adversely affected the overall financial condition of Aerex’s current and prospective customers. Accordingly, in light of this new information from Aerex’s former major customer, and the on-going weak economic conditions that the Company believed would continue through 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 segment’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;">For the year ended December 31, 2022, the Company estimated the fair value of its manufacturing reporting unit 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. The Company also estimated the fair value of its manufacturing reporting unit for the year ended December 31, 2022 by applying the guideline public company method. The Company weighted the fair values estimated for its manufacturing reporting unit under each method and summed such weighted fair values to estimate the overall fair value for the reporting unit. The respective weightings the Company applied to each method for the year ended December 31, 2022 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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The fair value the Company estimated for its manufacturing reporting unit exceeded its carrying amount by 63% as of December 31, 2022.</p> 0.39 7800000 0.79 0.80 0.20 31 0.80 0.20 2900000 0.80 0.20 63 <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> 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. <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’ contract with the Water and Sewerage Corporation of The Bahamas (“WSC”) 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 31, 2023 and 2022. Accumulated amortization for these costs was approximately $3.1 million and $2.9 million as of December 31, 2023 and 2022, respectively. Amortization expense for these costs was $179,353 for the years ended December 31, 2023 and 2022.</p> 438000000 3500000 3100000 2900000 179353 <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 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 </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">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;">​</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;"><b style="font-weight:bold;">Revenue recognition:</b> Revenue is recognized when control of the promised goods or services is transferred to the Company’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;">​</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’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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:72.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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.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-size:8pt;visibility:hidden;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width: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;">Year Ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:72.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-size:8pt;visibility:hidden;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </span></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;">2023</b></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;">    </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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.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;">Retail revenue</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;">​</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;"> 30,158,051</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;">​</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,954,013</p></td></tr><tr><td style="vertical-align:bottom;width:72.89%;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: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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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: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;"> 34,595,058</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;">​</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;"> 32,991,066</p></td></tr><tr><td style="vertical-align:bottom;width:72.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;">Services revenue</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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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;"> 97,966,650</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;">​</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,835,428</p></td></tr><tr><td style="vertical-align:bottom;width:72.89%;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: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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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;"> </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;"> 17,491,474</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;">​</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;"> </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,324,465</p></td></tr><tr><td style="vertical-align:bottom;width:72.89%;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: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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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;"> 180,211,233</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;">​</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;"> 94,104,972</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Services revenue consists 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;background:#ffff00;">​</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:73.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;">​</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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</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:8pt;margin:0pt 0pt 0.05pt 0pt;">    </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.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;">Construction revenue</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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 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;"> 77,306,704</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;">​</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 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;"> 11,616,274</p></td></tr><tr><td style="vertical-align:bottom;width:73.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operations and maintenance revenue</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 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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 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;"> 19,368,365</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;">​</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 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;"> 14,152,158</p></td></tr><tr><td style="vertical-align:bottom;width:73.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;">Design and consulting revenue</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 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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 0pt 0.05pt 0pt;"> </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,291,581</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;">​</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 0pt 0.05pt 0pt;"> </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,066,996</p></td></tr><tr><td style="vertical-align:bottom;width:73.09%;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 services revenue</b></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 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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 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;"> 97,966,650</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;">​</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 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;"> 28,835,428</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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt;">Retail revenue</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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin: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. Customers are billed 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.</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;">​</span></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’s premises. The amount of water supplied is determined and invoiced based upon water meter readings performed at the end of each month. All retail water contracts are month-to-month contracts. The Company has elected the “right to invoice” 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, recognizing this revenue from the transfer of goods or services to customers at a point in time.</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 utilities 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 10pt 0pt;">OC-Cayman provides bulk water to the Water Authority-Cayman (“WAC”), 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’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 (“WSC”), which distributes such water through its own pipeline system to residential, commercial and tourist properties on the island of New Providence.</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 “right to invoice” 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, recognizing this revenue from the transfer of goods or services to customers at a point in time.</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 designs, builds, sells, operates and maintains, and provides consulting services related to water, wastewater and water reuse infrastructure through PERC. All of PERC's customers are companies or governmental entities located in the United States. Effective October 2023, PERC acquired REC, a company that provides operations and maintenance and consulting services to companies and governmental entities located in the United States.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company also 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, through Aerex, is a custom and specialty manufacturer of systems and products applicable to commercial, municipal and industrial water production and treatment. Substantially all of Aerex’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, operations and maintenance, design and consulting revenue from PERC and DesalCo and generates manufacturing revenue from Aerex. The Company also generates operations and maintenance and consulting revenue from REC.</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 custom/specialized manufacturing contracts </span>over time under the input method using costs incurred (which represents work performed) to date relative to the total estimated costs at completion to measure progress toward satisfying a contract’s performance obligations as such measure best reflects the transfer of control of the promised good to the customer. Contract costs include labor, materials, subcontractor costs and other expenses. 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 costs to be incurred 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 percentage of total estimated revenue that incurred costs to date comprise of estimated total contract costs. Due to the extended time it may take to complete many of the Company’s contracts and the scope and nature of the work required to be performed on those contracts, the estimations of total revenue and costs at completion are complicated and subject to many variables and, accordingly, are subject to changes. When adjustments in estimated total contract revenue or estimated total contract costs are required, any changes from prior estimates are recognized in the current period for the inception-to-date effect of such changes. 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;">During the year ended December 31, 2023, the Company adjusted its prior year estimates of the total contract costs for two of its construction contracts. These changes in accounting estimates resulted in an increase in the services segment’s income from operations and the Company’s consolidated net income by $2,356,439 and $1,750,750, respectively, for the year ended December 31, 2023.<span style="color:#0000ff;"> </span>This adjustment increased basic and <span style="-sec-ix-hidden:Hidden_OT-T-OzwT0yRZ6o2fA_oLA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">diluted</span></span> earnings per share by $0.11 for the year ended December 31, 2023.</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 “right to invoice” practical expedient for revenue recognition on its operations and maintenance, design and consulting contracts and recognizes revenue in the amount to which the Company has a right to invoice, recognizing this revenue from the transfer of goods or services to customers at a point in time. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">During the years ended December 31, 2023 and 2022, the Company recognized $77,411,792 and $14,146,271, respectively, of its services revenue from the transfer of goods or services to customers over time. The remaining services revenue of $20,554,858 and $14,689,157, respectively, was recognized from the transfer of goods or services to customers at a point in time. During the years ended December 31, 2023 and 2022, the Company recognized all of its manufacturing revenue from the transfer of goods or services to customers over time.</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;">The Company does not disclose the value of unsatisfied performance obligations for (i) contracts with an original expected length of one year or less and (ii) 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;">The following table presents the Company’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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:72.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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.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-size:8pt;visibility:hidden;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width: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;">Year Ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:72.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-size:8pt;visibility:hidden;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </span></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;">2023</b></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;">    </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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.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;">Retail revenue</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;">​</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;"> 30,158,051</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;">​</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,954,013</p></td></tr><tr><td style="vertical-align:bottom;width:72.89%;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: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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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: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;"> 34,595,058</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;">​</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;"> 32,991,066</p></td></tr><tr><td style="vertical-align:bottom;width:72.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;">Services revenue</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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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;"> 97,966,650</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;">​</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,835,428</p></td></tr><tr><td style="vertical-align:bottom;width:72.89%;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: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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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;"> </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;"> 17,491,474</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;">​</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;"> </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,324,465</p></td></tr><tr><td style="vertical-align:bottom;width:72.89%;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: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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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;"> 180,211,233</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;">​</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;"> 94,104,972</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Services revenue consists 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;background:#ffff00;">​</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:73.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;">​</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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</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:8pt;margin:0pt 0pt 0.05pt 0pt;">    </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.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;">Construction revenue</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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 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;"> 77,306,704</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;">​</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 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;"> 11,616,274</p></td></tr><tr><td style="vertical-align:bottom;width:73.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operations and maintenance revenue</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 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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 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;"> 19,368,365</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;">​</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 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;"> 14,152,158</p></td></tr><tr><td style="vertical-align:bottom;width:73.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;">Design and consulting revenue</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 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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 0pt 0.05pt 0pt;"> </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,291,581</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;">​</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 0pt 0.05pt 0pt;"> </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,066,996</p></td></tr><tr><td style="vertical-align:bottom;width:73.09%;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 services revenue</b></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 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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 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;"> 97,966,650</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;">​</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 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;"> 28,835,428</p></td></tr></table> 30158051 25954013 34595058 32991066 97966650 28835428 17491474 6324465 180211233 94104972 77306704 11616274 19368365 14152158 1291581 3066996 97966650 28835428 P30D P45D P45D 2356439 1750750 0.11 77411792 14146271 20554858 14689157 <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 2022 have been reclassified to conform to the current year’s presentation.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p> <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’s bank accounts as to withdrawal or use. As of December 31, 2023 and 2022, the equivalent United States dollars of the Company’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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.94%;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 31, </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;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 colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">2023</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;">    </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;">2022</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;">Bank accounts:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">  </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;"> </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;">​</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;">  </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 6pt;">United States dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"> 15,857,612</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;">​</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;"> 24,573,161</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 6pt;">Cayman Islands dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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,826,102</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;">​</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;"> 14,956,162</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 6pt;">Bahamian dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;border-bottom:1px 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;"> 3,025,898</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;">​</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;"> </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;"> 5,698,100</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> </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;"> 30,709,612</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;">​</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;"> </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;"> 45,227,423</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="visibility:hidden;">​</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="visibility:hidden;">​</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;">​</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;">​</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="visibility:hidden;">​</span></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;">Short-term deposits:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;">  </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;">​</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 0pt 0.05pt 0pt;">  </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 6pt;">United States dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"> 8,861,606</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;">​</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;"> 2,476,370</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 6pt;">Cayman Islands dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> </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,050,680</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;">​</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;"> </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,007,958</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;border-bottom:1px 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;"> 11,912,286</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;">​</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;"> </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;"> 5,484,328</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;">Total cash and cash equivalents</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> 42,621,898</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;">​</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;"> 50,711,751</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;background:#00ff00;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Transfers from the Company’s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of The Bahamas.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.94%;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 31, </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;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 colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">2023</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;">    </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;">2022</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;">Bank accounts:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">  </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;"> </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;">​</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;">  </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 6pt;">United States dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"> 15,857,612</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;">​</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;"> 24,573,161</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 6pt;">Cayman Islands dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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,826,102</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;">​</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;"> 14,956,162</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 6pt;">Bahamian dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;border-bottom:1px 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;"> 3,025,898</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;">​</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;"> </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;"> 5,698,100</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> </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;"> 30,709,612</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;">​</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;"> </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;"> 45,227,423</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="visibility:hidden;">​</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="visibility:hidden;">​</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;">​</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;">​</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="visibility:hidden;">​</span></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;">Short-term deposits:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;">  </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;">​</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 0pt 0.05pt 0pt;">  </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 6pt;">United States dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"> 8,861,606</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;">​</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;"> 2,476,370</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 6pt;">Cayman Islands dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> </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,050,680</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;">​</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;"> </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,007,958</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;border-bottom:1px 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;"> 11,912,286</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;">​</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;"> </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;"> 5,484,328</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;">Total cash and cash equivalents</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> 42,621,898</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;">​</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;"> 50,711,751</p></td></tr></table> 15857612 24573161 11826102 14956162 3025898 5698100 30709612 45227423 8861606 2476370 3050680 3007958 11912286 5484328 42621898 50711751 <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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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 31, </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;">​</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;">    </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;">2023</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;">    </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;">2022</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"> 38,446,554</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;">​</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;"> 27,163,719</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"> 41,129</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;">​</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;"> </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;"> 37,293</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;"> </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;"> 322,609</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;">​</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;"> </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;"> 28,384</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;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"> 38,810,292</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;">​</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;"> </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;"> 27,229,396</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 credit losses</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;"> </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;"> (583,401)</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;">​</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;"> </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;"> (183,214)</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;"> 38,226,891</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;">​</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;"> 27,046,182</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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 credit losses consisted of:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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.1%;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;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</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;">​</span></p></td><td colspan="5" 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;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</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;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.19%;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;">2023</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;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.17%;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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:73.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;">Opening allowance for credit losses</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;">​</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.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 0.05pt 0pt;"> 183,214</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;">​</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.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 183,020</p></td></tr><tr><td style="vertical-align:top;width:73.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Provision for credit losses</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;">​</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:9.77%;margin: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,489</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;">​</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:9.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Accounts written off during the year</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;">​</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.77%;background:#cceeff;margin: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,215)</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;">​</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.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (726)</p></td></tr><tr><td style="vertical-align:top;width:73.1%;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.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;border-bottom:1px 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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px 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;"> 913</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;border-bottom:1px 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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.75%;border-bottom:1px 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;"> 920</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Ending allowance for credit losses</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;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.77%;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;"> 583,401</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;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.75%;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;"> 183,214</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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 18.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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 31, </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;">​</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;">    </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;">2023</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;">    </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;">2022</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"> 38,446,554</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;">​</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;"> 27,163,719</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"> 41,129</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;">​</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;"> </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;"> 37,293</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;"> </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;"> 322,609</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;">​</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;"> </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;"> 28,384</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;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"> 38,810,292</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;">​</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;"> </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;"> 27,229,396</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 credit losses</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;"> </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;"> (583,401)</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;">​</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;"> </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;"> (183,214)</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;"> 38,226,891</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;">​</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;"> 27,046,182</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p> 38446554 27163719 41129 37293 322609 28384 38810292 27229396 583401 183214 38226891 27046182 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The activity for the allowance for credit losses consisted of:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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.1%;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;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</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;">​</span></p></td><td colspan="5" 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;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</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;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.19%;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;">2023</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;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.17%;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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:73.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;">Opening allowance for credit losses</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;">​</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.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 0.05pt 0pt;"> 183,214</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;">​</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.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 183,020</p></td></tr><tr><td style="vertical-align:top;width:73.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Provision for credit losses</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;">​</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:9.77%;margin: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,489</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;">​</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:9.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Accounts written off during the year</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;">​</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.77%;background:#cceeff;margin: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,215)</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;">​</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.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (726)</p></td></tr><tr><td style="vertical-align:top;width:73.1%;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.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;border-bottom:1px 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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;border-bottom:1px 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;"> 913</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;border-bottom:1px 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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.75%;border-bottom:1px 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;"> 920</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Ending allowance for credit losses</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;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.77%;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;"> 583,401</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;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.75%;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;"> 183,214</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p> 183214 183020 408489 0 9215 726 913 920 583401 183214 <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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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.02%;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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</span></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="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.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 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</span></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;">    </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;">2023</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;">    </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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:73.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;">Spare parts stock</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;">​</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;"> 7,747,455</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;">​</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;"> 6,514,333</p></td></tr><tr><td style="vertical-align:bottom;width:73.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Raw materials</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;">​</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;">​</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 0.05pt 0pt;"> 3,135,357</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;">​</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;">​</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 0.05pt 0pt;"> 3,481,486</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Consumables stock</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;">​</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;"> 166,935</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;">​</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;"> 246,355</p></td></tr><tr><td style="vertical-align:top;width:73.02%;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: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;">​</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 40,666</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;">​</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 36,655</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Total inventory</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;">​</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;"> 11,090,413</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;">​</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;"> 10,278,829</p></td></tr><tr><td style="vertical-align:top;width:73.02%;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: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;">​</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;"> </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,044,642</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;">​</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;"> </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;"> 5,727,842</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Inventory (non-current)</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;">​</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;"> 5,045,771</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;">​</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;"> 4,550,987</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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.02%;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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</span></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="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.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 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</span></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;">    </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;">2023</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;">    </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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:73.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;">Spare parts stock</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;">​</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;"> 7,747,455</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;">​</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;"> 6,514,333</p></td></tr><tr><td style="vertical-align:bottom;width:73.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Raw materials</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;">​</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;">​</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 0.05pt 0pt;"> 3,135,357</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;">​</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;">​</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 0.05pt 0pt;"> 3,481,486</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Consumables stock</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;">​</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;"> 166,935</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;">​</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;"> 246,355</p></td></tr><tr><td style="vertical-align:top;width:73.02%;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: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;">​</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 40,666</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;">​</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 36,655</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Total inventory</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;">​</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;"> 11,090,413</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;">​</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;"> 10,278,829</p></td></tr><tr><td style="vertical-align:top;width:73.02%;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: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;">​</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;"> </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,044,642</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;">​</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;"> </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;"> 5,727,842</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Inventory (non-current)</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;">​</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;"> 5,045,771</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;">​</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;"> 4,550,987</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> 7747455 6514333 3135357 3481486 166935 246355 40666 36655 11090413 10278829 6044642 5727842 5045771 4550987 <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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:70.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;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.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;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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;">​</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;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:70.38%;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;">​</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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.06%;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;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.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;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:70.38%;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;">​</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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.06%;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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.22%;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;">2023</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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.19%;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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.38%;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.06%;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:0.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;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.19%;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;"> 108,952,682</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;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:1.03%;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.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 0pt 0pt;"> 25,469,014</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.38%;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.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (101,724,459)</p></td><td style="vertical-align:bottom;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;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (33,407,182)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.38%;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.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.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;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.19%;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;"> 8,087,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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> 2,047,969</p></td></tr><tr><td style="vertical-align:bottom;width:70.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net contract asset/(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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.19%;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;"> 15,316,046</p></td><td style="vertical-align:bottom;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;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> (5,890,199)</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#00b050;visibility:hidden;">​</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="color:#00b050;visibility:hidden;">​</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:70.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;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><span style="font-size:1pt;visibility:hidden;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:70.71%;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;">​</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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;"><b style="font-weight:bold;">December 31,</b></p></td></tr><tr><td style="vertical-align:bottom;width:70.71%;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;">​</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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.64%;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;">2023</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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.36%;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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:70.71%;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.06%;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:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> 21,553,057</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;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:1.22%;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.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 0pt 0pt;"> 2,913,722</p></td></tr><tr><td style="vertical-align:bottom;width:70.71%;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.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></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;"><span style="visibility:hidden;">​</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;"> </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;"> (6,237,011)</p></td><td style="vertical-align:bottom;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;border-bottom:1px solid #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.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;"> (8,803,921)</p></td></tr><tr><td style="vertical-align:bottom;width:70.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net contract asset/(liability)</p></td><td style="vertical-align:bottom;white-space: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;">​</span></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;"><span style="visibility:hidden;">​</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;"> 15,316,046</p></td><td style="vertical-align:bottom;white-space: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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;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.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;"> (5,890,199)</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#00b050;font-size:1pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#00b050;font-size:1pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#00b050;font-size:8pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The significant increase in contract assets from December 31, 2022 to December 31, 2023 is attributable to the construction contract with the WAC for the Red Gate plant in Grand Cayman and the construction contract with Liberty Utilities for a water treatment facility in Arizona.</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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">During the year ended December 31, 2023, the Company adjusted its prior year estimates of the total contract costs for two of its construction contracts. These changes in accounting estimates resulted in an increase in the services segment’s income from operations and the Company’s consolidated net income by $2,356,439 and $1,750,750, respectively, for the year ended December 31, 2023. This adjustment increased basic and <span style="-sec-ix-hidden:Hidden_vEdiF9yhA0yXiPGvCAuWvA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">diluted</span></span> earnings per share by $0.11 for the year ended December 31, 2023.</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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As of December 31, 2023, the Company had unsatisfied or partially unsatisfied performance obligations for contracts in progress representing approximately $162.2 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 $22.2 million during the year ending December 31, 2024 and $140 million thereafter. In addition, the Company recognized revenue of approximately $8.7 million in the year ended December 31, 2023, that was included in the contract liability balance as of December 31, 2022.</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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:70.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;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.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;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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;">​</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;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:70.38%;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;">​</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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.06%;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;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.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;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:70.38%;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;">​</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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.06%;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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.22%;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;">2023</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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.19%;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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.38%;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.06%;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:0.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;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.19%;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;"> 108,952,682</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;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:1.03%;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.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 0pt 0pt;"> 25,469,014</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.38%;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.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (101,724,459)</p></td><td style="vertical-align:bottom;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;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (33,407,182)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.38%;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.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.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;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.19%;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;"> 8,087,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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> 2,047,969</p></td></tr><tr><td style="vertical-align:bottom;width:70.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net contract asset/(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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.19%;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;"> 15,316,046</p></td><td style="vertical-align:bottom;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;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> (5,890,199)</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#00b050;visibility:hidden;">​</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="color:#00b050;visibility:hidden;">​</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:70.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;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><span style="font-size:1pt;visibility:hidden;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:70.71%;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;">​</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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;"><b style="font-weight:bold;">December 31,</b></p></td></tr><tr><td style="vertical-align:bottom;width:70.71%;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;">​</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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.64%;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;">2023</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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.36%;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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:70.71%;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.06%;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:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> 21,553,057</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;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:1.22%;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.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 0pt 0pt;"> 2,913,722</p></td></tr><tr><td style="vertical-align:bottom;width:70.71%;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.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></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;"><span style="visibility:hidden;">​</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;"> </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;"> (6,237,011)</p></td><td style="vertical-align:bottom;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;border-bottom:1px solid #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.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;"> (8,803,921)</p></td></tr><tr><td style="vertical-align:bottom;width:70.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net contract asset/(liability)</p></td><td style="vertical-align:bottom;white-space: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;">​</span></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;"><span style="visibility:hidden;">​</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;"> 15,316,046</p></td><td style="vertical-align:bottom;white-space: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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;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.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;"> (5,890,199)</p></td></tr></table> 108952682 25469014 101724459 33407182 8087823 2047969 15316046 -5890199 21553057 2913722 6237011 8803921 15316046 -5890199 2356439 1750750 0.11 162200000 22200000 140000000 8700000 <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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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.1%;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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.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;">​</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;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.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;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:71.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;">​</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;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.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;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;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 colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:71.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;">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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</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;"> 6,488,400</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</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;"> 6,488,400</p></td></tr><tr><td style="vertical-align:top;width:71.1%;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 26,044,551</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 23,280,880</p></td></tr><tr><td style="vertical-align:top;width:71.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;">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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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;"> 66,000,977</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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,532,994</p></td></tr><tr><td style="vertical-align:top;width:71.1%;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 39,546,175</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 39,544,395</p></td></tr><tr><td style="vertical-align:top;width:71.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;">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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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,338,760</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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,109,546</p></td></tr><tr><td style="vertical-align:top;width:71.1%;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 3,433,561</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 2,525,576</p></td></tr><tr><td style="vertical-align:top;width:71.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;">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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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;"> 306,545</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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></tr><tr><td style="vertical-align:top;width:71.1%;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;border-bottom:1px 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.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.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;border-bottom:1px 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.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.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;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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;"> 145,171,425</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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;"> 139,782,227</p></td></tr><tr><td style="vertical-align:top;width:71.1%;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;border-bottom:1px 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.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;"> 89,288,904</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;border-bottom:1px 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.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;"> 87,252,682</p></td></tr><tr><td style="vertical-align:top;width:71.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;">Property, plant and equipment, net</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> 55,882,521</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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,529,545</p></td></tr><tr><td style="vertical-align:top;width:71.1%;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: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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> 495,471</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> 3,705,681</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As of December 31, 2023, the Company had outstanding capital commitments of approximately $455,000. The Company maintains insurance for loss or damage to all fixed assets that it deems susceptible to loss. During the years ended December 31, 2023 and 2022, $7,093,158 and $297,723, respectively, of construction in progress was placed in service. Depreciation expense was $5,823,008 and $5,425,177 for the years ended December 31, 2023 and 2022<span style="color:#00b050;">, </span>respectively.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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.1%;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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.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;">​</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;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.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;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:71.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;">​</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;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.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;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;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 colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:71.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;">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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</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;"> 6,488,400</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</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;"> 6,488,400</p></td></tr><tr><td style="vertical-align:top;width:71.1%;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 26,044,551</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 23,280,880</p></td></tr><tr><td style="vertical-align:top;width:71.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;">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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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;"> 66,000,977</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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,532,994</p></td></tr><tr><td style="vertical-align:top;width:71.1%;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 39,546,175</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 39,544,395</p></td></tr><tr><td style="vertical-align:top;width:71.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;">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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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,338,760</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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,109,546</p></td></tr><tr><td style="vertical-align:top;width:71.1%;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 3,433,561</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 2,525,576</p></td></tr><tr><td style="vertical-align:top;width:71.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;">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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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;"> 306,545</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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></tr><tr><td style="vertical-align:top;width:71.1%;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;border-bottom:1px 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.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.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;border-bottom:1px 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.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.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;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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;"> 145,171,425</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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;"> 139,782,227</p></td></tr><tr><td style="vertical-align:top;width:71.1%;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;border-bottom:1px 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.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;"> 89,288,904</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;border-bottom:1px 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.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;"> 87,252,682</p></td></tr><tr><td style="vertical-align:top;width:71.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;">Property, plant and equipment, net</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> 55,882,521</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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,529,545</p></td></tr><tr><td style="vertical-align:top;width:71.1%;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: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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> 495,471</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> 3,705,681</p></td></tr></table> 6488400 6488400 26044551 23280880 66000977 64532994 39546175 39544395 3338760 3109546 3433561 2525576 306545 287980 12456 12456 145171425 139782227 89288904 87252682 55882521 52529545 495471 3705681 455000000000 7093158 297723 5823008 5425177 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">8. Discontinued operations – Mexico project development</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. (“CW-Cooperatief”), and its Mexico subsidiary, N.S.C. Agua, S.A. de C.V. (“NSC”), of a project (the “Project”) 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’s plant was to be constructed.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">​</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 “State”) 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 “Consortium”) comprised of NSC, Suez Medio Ambiente México, S.A. de C.V. (“Suez MA”), a subsidiary of SUEZ International, S.A.S., and NuWater S.A.P.I. de C.V. (“NuWater”) 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;">​</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. (“AdR”) 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;">​</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 “APP Contract”) was executed between AdR, the State Water Commission of Baja California (“CEA”), and the Government of Baja California, as represented by the Secretary of Planning and Finance and the Public Utilities Commission of Tijuana (“CESPT”). 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 public 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 January 2025. 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, 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;">​</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 “Letter”) 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 “Project Works” (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 required that 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 amparo 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 20 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 20-day 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 formal 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;"><span style="visibility:hidden;">​</span></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 “Treaty”). On April 16, 2021, CW-Cooperatief submitted a letter to the President of Mexico and other Mexican federal government officials alleging that the State’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 invited Mexico to seek a resolution of this investment dispute through consultation and negotiation, but stated that if the dispute cannot be resolved in this manner, CW-Cooperatief would 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’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’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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;">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;margin: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 the Company has incurred and will continue to incur legal and other arbitration-related expenses that are 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;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">During July 2022, the State initiated discussions with the Company to potentially resolve the issues related to the cancellation by the government of the Rosarito desalination plant contract as well as potentially addressing the State’s acute water shortage issues. The Company cannot presently determine the outcome of the discussions and the Company has not terminated its efforts to obtain relief through the international arbitration process as a result of these discussions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></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;"><span style="visibility:hidden;">​</span></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 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 classified as discontinued operations in the accompanying 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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company’s net losses from discontinued operations for the years ended December 31, 2023 and 2022 were ($1,086,744) and ($2,371,049), respectively. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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.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;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</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;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;">​</span></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:24.19%;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:72.43%;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;">​</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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;">​</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;">2023</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:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;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;">​</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;">2022</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;"><span style="font-size:8pt;visibility:hidden;">​</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;text-align:center;margin:0pt;">    </p></td><td colspan="2" 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:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.43%;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.1%;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';">   </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;"> 91,283</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';">   </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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 442,252</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;">Accounts receivable</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> —</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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;"><span style="visibility:hidden;">​</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;"> 12,675</p></td></tr><tr><td style="vertical-align:bottom;width:72.43%;background:#cceeff;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.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> 120,234</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</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;"> 76,553</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;">Land</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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%;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.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </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;"> 21,126,898</p></td></tr><tr><td style="vertical-align:bottom;width:72.43%;background:#cceeff;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.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;"> </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 0pt 0pt;"> 2,390</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;"><span style="visibility:hidden;">​</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;"> </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 0pt 0pt;"> 2,390</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;">Total assets of discontinued operations</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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%;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;"> 21,340,805</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;"><span style="visibility:hidden;">​</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;">$</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 0pt 0pt;"> 21,660,768</p></td></tr><tr><td style="vertical-align:bottom;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;"> </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;">  </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;"><span style="visibility:hidden;">​</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;"> </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;">  </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;">Total liabilities of discontinued operations</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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%;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;"> 364,665</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;"><span style="visibility:hidden;">​</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;">$</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 0pt 0pt;"> 389,884</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="color:#00b050;visibility:hidden;">​</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.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;">Year Ended December 31, </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;">​</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;">​</span></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;">2023</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;">    </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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;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;">Revenue</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;">    </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;"> —</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;">    </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;"> —</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;">Loss from discontinued operations</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;">​</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;">$</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;"> 1,086,744</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;">​</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;">$</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;"> 2,371,049</p></td></tr><tr><td style="vertical-align:bottom;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;">Depreciation expense</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;">​</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;"> —</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;">​</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;"> —</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;">Mexico Project litigation</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;font-style:italic;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">a)</td><td style="padding:0pt;"><i style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:normal;">EWG request of precautionary measures </i></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;">In January 2018, EWG Water LLC (“EWG”) initiated an ordinary mercantile claim against, among others, N.S.C. Agua, S.A. de C.V. (“NSC”) and Consolidated Water Cooperatief, U.A. (“CW-Cooperatief”) (with Aguas de Rosarito S.A.P.I. de C.V. (“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 “Tenth Civil Judge”).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In such claim, EWG challenged, among other things, the transactions contemplated under a certain option agreement (entered into in 2012), and therefore, the capital investment transactions occurring in May 2013 that increased the ownership interest of CW-Cooperatief in NSC to 99.99%. 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. Within the above-mentioned claim, the Tenth Civil Judge granted EWG certain preliminary measures against NSC, which were later overturned by an Upper Court.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In July 2023, EWG filed a motion before a local court in Playas de Rosarito, Baja California (the “Rosarito Court”) to obtain precautionary measures consisting of the securing of assets owned by NSC (particularly real estate), as a procedure prior to the commencement of an arbitration that allegedly would be initiated by EWG against NSC to claim the payment of an indemnification for damages derived from a so-called simulation of legal acts. In the opinion of the Rosarito Court, such motion did not require notification to NSC or the presentation of counterarguments by NSC to the motion prior to securing the assets of NSC.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On July 28, 2023, the Rosarito Court issued a resolution in which it: (i) granted the precautionary measures requested by EWG, subject to the posting of a bond in the amount of MXN$1,500,000 (One Million Five Hundred Thousand Mexican Pesos), and (ii) ordered that once the precautionary measures were executed, EWG would have three business days counted as from the posting of the bond, to initiate and prove to the Rosarito Court that it initiated the arbitration. To the Company’s knowledge EWG has not posted the bond. Consequently, NSC has not been summoned to an arbitration procedure.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As EWG has apparently not posted the bond set by the Rosarito Court (i) the precautionary measures have not been enforced, (ii) no securing or attachment has been registered against the real estate of NSC; and (iii) NSC has not been formally summoned to this procedure. As stated previously, NSC is unaware of any arbitration commenced by EWG regarding this matter.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</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;font-style:italic;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">b)</td><td style="padding:0pt;"><i style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:normal;">NSC amparo lawsuit</i></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;">On August 16, 2023, NSC filed an amparo suit (i.e. application for constitutional relief) before the Eleventh Federal District Court in Tijuana (“Federal District Court in Tijuana”) against the precautionary measures granted to EWG by the Rosarito Court.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#0000ff;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In its amparo suit, NSC also requested the Federal District Court in Tijuana to grant an order to put on hold said precautionary measures. A preliminary order to stay was granted by the Federal District Court in Tijuana, followed by a definitive injunction, subject to the posting of a guarantee. NSC has submitted the guarantee to the court.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">NSC subsequently filed an extension of the amparo suit introducing new arguments aiming to strengthen NSC´s position. The amparo extension was admitted through a resolution published on November 7, 2023. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Federal District Court in Tijuana has not been able to summon EWG on this amparo suit, as it has not been able to determine nor obtain information on an address where EWG can be summoned. As such, the Federal District Court in Tijuana has requested various authorities to provide information on any domicile where EWG can be summoned.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The responses of some authorities are in process of being received by the Federal District Court in Tijuana. NSC is waiting until all the authorities provide their official response to determine if there is a viable alternative for summoning EWG.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">NSC offered certain evidence consisting of the docket of amparo file number 74/2020, which was processed by the Twelfth Civil District Court in Tijuana. The Amparo Law provides that any documentary evidence offered by the parties shall be issued without any cost. Therefore, NSC requested the Court to grant the expedition of said copies for free.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">However, this request was denied by the Federal District Court in Tijuana. Therefore, NSC filed an appeal for review against said decision, which was admitted by the Federal District Court in Tijuana and sent to the Second Collegiate Circuit Court in Tijuana, acting as Court of Appeals, which confirmed the admission of the appeal remedy through a resolution published on January 26, 2024. The judgment is still pending resolution.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#0000ff;visibility:hidden;">​</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 matter may have on its consolidated financial statements.</p> 100000000 20.1 21100000 0.996 0.004 100000000 50000000 50000000 P36M P37Y P20D 51144525 137333114 51000000 137000000 -1086744 -2371049 <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.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;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</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;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;">​</span></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:24.19%;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:72.43%;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;">​</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;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;">​</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;">2023</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:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;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;">​</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;">2022</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;"><span style="font-size:8pt;visibility:hidden;">​</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;text-align:center;margin:0pt;">    </p></td><td colspan="2" 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:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.43%;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.1%;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';">   </span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;"> 91,283</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';">   </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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 442,252</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;">Accounts receivable</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> —</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;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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;"><span style="visibility:hidden;">​</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;"> 12,675</p></td></tr><tr><td style="vertical-align:bottom;width:72.43%;background:#cceeff;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.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> 120,234</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</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;"> 76,553</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;">Land</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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%;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.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </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;"> 21,126,898</p></td></tr><tr><td style="vertical-align:bottom;width:72.43%;background:#cceeff;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.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;"> </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 0pt 0pt;"> 2,390</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;"><span style="visibility:hidden;">​</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;"> </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 0pt 0pt;"> 2,390</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;">Total assets of discontinued operations</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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%;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;"> 21,340,805</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;"><span style="visibility:hidden;">​</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;">$</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 0pt 0pt;"> 21,660,768</p></td></tr><tr><td style="vertical-align:bottom;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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;"> </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;">  </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;"><span style="visibility:hidden;">​</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;"> </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;">  </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;">Total liabilities of discontinued operations</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;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%;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;"> 364,665</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;"><span style="visibility:hidden;">​</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;">$</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 0pt 0pt;"> 389,884</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="color:#00b050;visibility:hidden;">​</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.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;">Year Ended December 31, </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;">​</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;">​</span></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;">2023</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;">    </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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;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;">Revenue</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;">    </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;"> —</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;">    </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;"> —</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;">Loss from discontinued operations</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;">​</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;">$</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;"> 1,086,744</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;">​</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;">$</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;"> 2,371,049</p></td></tr><tr><td style="vertical-align:bottom;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;">Depreciation expense</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;">​</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;"> —</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;">​</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;"> —</p></td></tr></table> 91283 442252 12675 120234 76553 21126898 21126898 2390 2390 21340805 21660768 364665 389884 -1086744 -2371049 0.9999 1500000 <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’s purchase transactions for Aerex and PERC identified certain intangible assets. The remaining intangible assets and their respective useful lives are as follows: trade names (<span style="-sec-ix-hidden:Hidden_grqZJLdxQkCrAbHZskcsHw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">15 years</span></span>) and facility management contracts (6 years).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Effective October 2023, the Company purchased a 100% ownership interest in REC. The purchase transaction identified certain intangible assets with a fair value of $1,108,390 and useful lives as follows: non-compete (5 years), trade name (15 years) and customer relationships (15 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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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.53%;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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.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;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;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 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;">2023</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;">    </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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:73.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;">Cost</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </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;">​</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;">  </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;"> </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;">​</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;">  </p></td></tr><tr><td style="vertical-align:top;width:73.53%;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.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 268,590</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;">​</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;"> —</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Trade names</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </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;"> 3,096,900</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;">​</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;"> </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.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></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;"> 442,900</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;">​</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;"><span style="visibility:hidden;">​</span></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;"> —</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Facility management contracts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </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;">​</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;"> </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.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </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;"> 6,008,390</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;">​</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;"> </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;"> 4,900,000</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Accumulated amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </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;">​</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;">​</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;"> </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;">  </p></td></tr><tr><td style="vertical-align:top;width:73.53%;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.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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 0pt 0.05pt 0pt;"> (13,430)</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;">​</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;"> —</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Trade names</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </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;"> (1,106,615)</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;">​</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;"> </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;"> (920,000)</p></td></tr><tr><td style="vertical-align:top;width:73.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></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;"> (7,382)</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;">​</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;"><span style="visibility:hidden;">​</span></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;"> —</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Facility management contracts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </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;"> (1,527,778)</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;">​</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;"> </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;"> (1,161,112)</p></td></tr><tr><td style="vertical-align:top;width:73.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </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,655,205)</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;">​</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;"> </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,081,112)</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Intangible assets, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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,353,185</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;">​</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;"> 2,818,888</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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 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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">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;">    </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;"> 656,371</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;">​</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 3pt 0.05pt 0pt;"> 595,260</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;">​</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;"> 289,705</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;">2027</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;">​</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 3pt 0.05pt 0pt;"> 289,705</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;">2028</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;">​</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;"> 276,275</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;">​</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;"> </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,245,869</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;">​</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;">​</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,353,185</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Amortization expense was $574,093 and $582,778 for the years ended December 31, 2023 and 2022, respectively.</p> P6Y 1108390 P5Y P15Y P15Y <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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.53%;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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.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;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;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 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;">2023</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;">    </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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:73.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;">Cost</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </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;">​</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;">  </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;"> </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;">​</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;">  </p></td></tr><tr><td style="vertical-align:top;width:73.53%;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.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 268,590</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;">​</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;"> —</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Trade names</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </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;"> 3,096,900</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;">​</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;"> </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.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></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;"> 442,900</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;">​</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;"><span style="visibility:hidden;">​</span></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;"> —</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Facility management contracts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </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;">​</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;"> </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.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </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;"> 6,008,390</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;">​</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;"> </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;"> 4,900,000</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Accumulated amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </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;">​</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;">​</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;"> </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;">  </p></td></tr><tr><td style="vertical-align:top;width:73.53%;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.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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 0pt 0.05pt 0pt;"> (13,430)</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;">​</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;"> —</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Trade names</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </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;"> (1,106,615)</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;">​</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;"> </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;"> (920,000)</p></td></tr><tr><td style="vertical-align:top;width:73.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></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;"> (7,382)</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;">​</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;"><span style="visibility:hidden;">​</span></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;"> —</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Facility management contracts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </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;"> (1,527,778)</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;">​</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;"> </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;"> (1,161,112)</p></td></tr><tr><td style="vertical-align:top;width:73.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </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,655,205)</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;">​</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;"> </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,081,112)</p></td></tr><tr><td style="vertical-align:top;width:73.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;">Intangible assets, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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,353,185</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;">​</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;"> 2,818,888</p></td></tr></table> 268590 3096900 2700000 442900 2200000 2200000 6008390 4900000 13430 1106615 920000 7382 1527778 1161112 2655205 2081112 3353185 2818888 <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 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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">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;">    </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;"> 656,371</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;">​</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 3pt 0.05pt 0pt;"> 595,260</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;">​</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;"> 289,705</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;">2027</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;">​</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 3pt 0.05pt 0pt;"> 289,705</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;">2028</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;">​</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;"> 276,275</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;">​</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;"> </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,245,869</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;">​</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;">​</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,353,185</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p> 656371 595260 289705 289705 276275 1245869 3353185 574093 582778 <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’s leases consist primarily of leases for office and warehouse space. 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’s current leases do not provide a readily determinable implicit rate. Therefore, the Company’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;"><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;"><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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin: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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin: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 31, </b></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:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.4%;margin: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 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin: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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;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;">2023</b></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-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;background:#cceeff;margin: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;">​</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;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.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 0.05pt 0pt;"> 110,541</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;">​</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.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 0.05pt 0pt;"> 35,624</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</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="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin: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,979</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.96%;background:#cceeff;margin: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;">​</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;">​</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.94%;background:#cceeff;margin: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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;border-bottom:1px 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,135,446</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="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;border-bottom:1px 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,058,384</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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 right-of-use assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.96%;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,245,987</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;">​</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.94%;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,101,987</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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:2.65%;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;">    </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;text-align:center;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;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="visibility:hidden;">​</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;text-align:center;margin:0pt 0pt 0.05pt 0pt;"> </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;text-align:center;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;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="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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 maturities of operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.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 0.05pt 0pt;"> 456,865</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;">​</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.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 0.05pt 0pt;"> 546,851</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</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="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin: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,361</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.96%;background:#cceeff;margin: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;">​</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;">​</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.94%;background:#cceeff;margin: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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;border-bottom:1px 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,827,302</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="visibility:hidden;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;border-bottom:1px 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,590,542</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.96%;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,284,167</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;">​</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.94%;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,144,754</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.81%;margin:0pt;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;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;">​</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:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;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;">​</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:11pt;visibility:hidden;">​</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:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;background:#cceeff;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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;">​</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.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin: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.1 years</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="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin: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.6 years</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.81%;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0.05pt 0pt;">0.0 years</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;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0.05pt 0pt;">0.8 years</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin: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;">​</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="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin: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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;background:#cceeff;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.96%;background:#cceeff;margin: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;">​</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;">​</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.94%;background:#cceeff;margin: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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin: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.67%</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="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin: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.11%</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;background:#cceeff;margin:0pt;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;">​</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:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0.05pt 0pt;">0.00%</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="font-size:11pt;visibility:hidden;">​</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:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0.05pt 0pt;">4.96%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The components of lease costs were as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:71.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.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:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;margin: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;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.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;">Year Ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:71.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:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;margin: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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin: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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.6%;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.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.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 0.05pt 0pt;"> 751,261</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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.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 0.05pt 0pt;"> 692,404</p></td></tr><tr><td style="vertical-align:bottom;width:71.6%;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.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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 217,640</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="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;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 100,975</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.6%;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.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0.05pt 0pt;"> 45,979</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0.05pt 0pt;"> 40,021</p></td></tr><tr><td style="vertical-align:bottom;width:71.6%;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.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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.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 0.05pt 0pt;"> 1,014,880</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="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;">​</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.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 0.05pt 0pt;"> 833,400</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:73.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.17%;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin: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;">    </b></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;">Year Ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin: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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.58%;margin:0pt;padding: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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.17%;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.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </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;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.17%;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.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="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 760,847</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.58%;margin:0pt;padding:0pt;"><p style="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;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 742,696</p></td></tr><tr><td style="vertical-align:bottom;width:73.17%;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.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="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;">​</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-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.99%;background:#cceeff;margin: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,337</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.99%;background:#cceeff;margin: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,590</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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, 2023 are as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</span></p></div></div></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 31, </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;">    </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;">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;">​</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;"> 580,780</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;">​</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 3pt 0.05pt 0pt;"> 462,990</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;">​</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;"> 379,019</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;">2027</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;">​</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 3pt 0.05pt 0pt;"> 336,597</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;">2028</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;">​</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;">​</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;"> 341,687</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;">​</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;"> </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;"> 639,928</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;">​</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;"> 2,741,001</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;">​</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;"> </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;"> (456,834)</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;">​</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;"> 2,284,167</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;">​</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;"> </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;"> (456,865)</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;">​</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;"> 1,827,302</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin: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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin: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 31, </b></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:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.4%;margin: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 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin: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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;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;">2023</b></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-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;background:#cceeff;margin: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;">​</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;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.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 0.05pt 0pt;"> 110,541</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;">​</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.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 0.05pt 0pt;"> 35,624</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</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="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin: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,979</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.96%;background:#cceeff;margin: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;">​</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;">​</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.94%;background:#cceeff;margin: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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;border-bottom:1px 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,135,446</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="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;border-bottom:1px 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,058,384</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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 right-of-use assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.96%;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,245,987</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;">​</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.94%;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,101,987</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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:2.65%;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;">    </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;text-align:center;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;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="visibility:hidden;">​</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;text-align:center;margin:0pt 0pt 0.05pt 0pt;"> </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;text-align:center;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;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="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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 maturities of operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.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 0.05pt 0pt;"> 456,865</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;">​</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.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 0.05pt 0pt;"> 546,851</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</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="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin: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,361</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.96%;background:#cceeff;margin: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;">​</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;">​</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.94%;background:#cceeff;margin: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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;border-bottom:1px 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,827,302</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="visibility:hidden;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;border-bottom:1px 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,590,542</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.96%;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,284,167</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;">​</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.94%;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,144,754</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.81%;margin:0pt;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;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;">​</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:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;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;">​</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:11pt;visibility:hidden;">​</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:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;background:#cceeff;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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;">​</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.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin: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.1 years</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="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin: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.6 years</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.81%;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0.05pt 0pt;">0.0 years</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;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0.05pt 0pt;">0.8 years</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin: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;">​</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="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin: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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;background:#cceeff;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.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.96%;background:#cceeff;margin: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;">​</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;">​</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.94%;background:#cceeff;margin: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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin: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.67%</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="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin: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.11%</p></td></tr><tr><td style="vertical-align:bottom;width:72.81%;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.65%;background:#cceeff;margin:0pt;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;">​</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:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0.05pt 0pt;">0.00%</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="font-size:11pt;visibility:hidden;">​</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:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0.05pt 0pt;">4.96%</p></td></tr></table> 110541 35624 7979 2135446 2058384 2245987 2101987 456865 546851 7361 1827302 1590542 2284167 2144754 P6Y1M6D P6Y7M6D P0Y P0Y9M18D 0.0567 0.0511 0.0000 0.0496 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The components of lease costs were as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:71.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.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:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;margin: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;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.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;">Year Ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:71.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:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;margin: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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin: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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.6%;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.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.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 0.05pt 0pt;"> 751,261</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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.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 0.05pt 0pt;"> 692,404</p></td></tr><tr><td style="vertical-align:bottom;width:71.6%;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.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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 217,640</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="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;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 100,975</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.6%;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.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0.05pt 0pt;"> 45,979</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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 0.05pt 0pt;"> 40,021</p></td></tr><tr><td style="vertical-align:bottom;width:71.6%;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.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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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.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 0.05pt 0pt;"> 1,014,880</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="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;">​</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.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 0.05pt 0pt;"> 833,400</p></td></tr></table> 751261 692404 217640 100975 45979 40021 1014880 833400 <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><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:73.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.17%;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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin: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;">    </b></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;">Year Ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.32%;margin: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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.58%;margin:0pt;padding: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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.17%;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.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </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;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.17%;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.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="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 760,847</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.58%;margin:0pt;padding:0pt;"><p style="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;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 742,696</p></td></tr><tr><td style="vertical-align:bottom;width:73.17%;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.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="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;">​</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-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.99%;background:#cceeff;margin: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,337</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.99%;background:#cceeff;margin: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,590</p></td></tr></table> 760847 742696 11337 9590 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</span></p></div></div></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 31, </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;">    </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;">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;">​</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;"> 580,780</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;">​</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 3pt 0.05pt 0pt;"> 462,990</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;">​</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;"> 379,019</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;">2027</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;">​</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 3pt 0.05pt 0pt;"> 336,597</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;">2028</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;">​</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;">​</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;"> 341,687</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;">​</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;"> </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;"> 639,928</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;">​</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;"> 2,741,001</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;">​</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;"> </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;"> (456,834)</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;">​</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;"> 2,284,167</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;">​</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;"> </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;"> (456,865)</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;">​</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;"> 1,827,302</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> 580780 462990 379019 336597 341687 639928 2741001 456834 2284167 456865 1827302 <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, 2023 and 2022 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;">​</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.55%;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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.23%;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 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:72.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.78%;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;">2023</b></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:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.23%;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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:72.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;">Foreign (not subject to income taxes)</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 10,002,233</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;margin: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,958,583</p></td></tr><tr><td style="vertical-align:top;width:72.55%;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.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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 0pt 0.05pt 0pt;"> (742,367)</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (987,279)</p></td></tr><tr><td style="vertical-align:top;width:72.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;">United States</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;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;"> </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;"> 27,649,330</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;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,394,642</p></td></tr><tr><td style="vertical-align:top;width:72.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"> 36,909,196</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.84%;margin: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,365,946</p></td></tr><tr><td style="vertical-align:top;width:72.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;">Discontinued operations</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;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;"> </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,086,744</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;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,371,049</p></td></tr><tr><td style="vertical-align:top;width:72.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;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;"> 37,995,940</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;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.84%;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,736,995</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company’s provision for (benefit from) income taxes for the years ended December 31, 2023 and 2022, 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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">Year Ended December 31, </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;">​</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;">    </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;">2023</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;">    </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;">2022</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;">Current:</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;">​</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="visibility:hidden;">​</span></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;"><span style="visibility:hidden;">​</span></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;">​</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="visibility:hidden;">​</span></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;"><span style="visibility:hidden;">​</span></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 6pt;">Federal</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;">​</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;">$</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;"> 5,611,360</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;">​</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;">$</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;"> 430,116</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 6pt;">State</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;">​</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="visibility:hidden;">​</span></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;"> 1,663,653</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;">​</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="visibility:hidden;">​</span></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;"> (29,157)</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 6pt;">Foreign</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;">​</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;">​</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;"> —</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;">​</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;">​</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;"> —</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 6pt;">Total current income tax expense (benefit)</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;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;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,275,013</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;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;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;"> 400,959</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;">Deferred:</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;">​</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;"> </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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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;"> </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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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 6pt;">Federal</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;">​</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="visibility:hidden;">​</span></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;"> (276,070)</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;">​</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="visibility:hidden;">​</span></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;"> (184,469)</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 6pt;">State</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;">​</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="visibility:hidden;">​</span></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 0pt 0.05pt 0pt;"> (248,929)</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;">​</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="visibility:hidden;">​</span></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;"> 180,249</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 6pt;">Foreign</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;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;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;"> —</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;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;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;"> —</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 6pt;">Total deferred income tax expense (benefit)</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;">​</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;">​</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 0pt 0.05pt 0pt;"> (524,999)</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;">​</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;">​</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 0pt 0.05pt 0pt;"> (4,220)</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;">Total provision for (benefit from) income taxes</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;">​</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;"> 6,750,014</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;">​</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;"> 396,739</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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 years ended December 31, 2023 and 2022 is as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:72.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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;">​</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:23.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;">Year Ended December 31, </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;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:bottom;width:72.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;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;">2023</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;">    </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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</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;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:top;width:72.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;">U.S. statutory federal rate</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;background:#cceeff;margin: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.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;">%  </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;"> 21.00</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:72.38%;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.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;margin: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.88</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;">%  </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;"> 8.88</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><tr><td style="vertical-align:top;width:72.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;">Foreign rate differential</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (5.71)</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;">%  </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 0pt 0.05pt 0pt;"> (25.57)</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:bottom;white-space:nowrap;width:72.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Research and development tax credit</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</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;">%  </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;"> (1.92)</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><tr><td style="vertical-align:top;width:72.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;">Permanent items</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;background:#cceeff;margin: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.32)</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;">%  </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 0pt 0.05pt 0pt;"> (0.70)</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:72.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Change in valuation allowance</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;border-bottom: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;"> (0.08)</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;">%  </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;"> 2.38</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><tr><td style="vertical-align:bottom;width:72.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;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;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;"> 17.77</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;">%  </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;"> 4.07</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></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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’s net long-term deferred tax liability as of December 31, 2023 and 2022 were as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;white-space:nowrap;width:72.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;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;">​</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;"><b style="font-weight:bold;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:72.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.19%;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;">2023</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;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.19%;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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;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:1.77%;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;">​</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;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;">​</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;"><span style="font-size:8pt;visibility:hidden;">​</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;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;">​</span></p></td></tr><tr><td style="vertical-align:top;width:72.11%;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:1.77%;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:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </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;"> </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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:72.11%;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 and development credit carryforwards</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 58,069</p></td></tr><tr><td style="vertical-align:top;width:72.11%;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;"> Net operating loss carryforwards</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 130,911</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 443,076</p></td></tr><tr><td style="vertical-align:top;width:72.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;"> Accruals and reserves</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 146,057</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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,503</p></td></tr><tr><td style="vertical-align:top;width:72.11%;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;"> Operating lease liabilities</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 501,397</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 412,840</p></td></tr><tr><td style="vertical-align:top;width:72.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;"> Capitalized research expenditures</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 326,178</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:72.11%;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;"> Others</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 29,094</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:72.11%;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:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;border-bottom:1px 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;"> —</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;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (29,036)</p></td></tr><tr><td style="vertical-align:top;width:72.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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,133,637</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;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> 967,452</p></td></tr><tr><td style="vertical-align:top;width:72.11%;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:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </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;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:72.11%;background:#cceeff;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:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 325,473</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;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 293,195</p></td></tr><tr><td style="vertical-align:top;width:72.11%;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:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 847,450</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;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 821,723</p></td></tr><tr><td style="vertical-align:top;width:72.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Operating lease right-of-use assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> 491,494</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;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> 412,840</p></td></tr><tr><td style="vertical-align:top;width:72.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;border-bottom:1px 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,664,417</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;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;border-bottom:1px 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,527,758</p></td></tr><tr><td style="vertical-align:top;width:72.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;">​</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;">​</span></p></td></tr><tr><td style="vertical-align:top;width:72.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net deferred tax liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> (530,780)</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;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> (560,306)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;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:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;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:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;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:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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,844,847</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;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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,378,177</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;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:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 2,818,663</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 2,163,681</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;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:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,015,484</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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,274,858</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;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:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> (15,678,994)</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> (11,816,716)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> —</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;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> —</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#00b050;visibility:hidden;">​</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, 2023, continuing operations has a federal net loss carryforward of $0.6 million and a state net loss carryforward of $0.3 million, both of which have an indefinite expiration date. Discontinued operations has a net loss carryforward of $19.5 million that will begin to expire, if unused, in various amounts between 2024 and 2033.<span style="color:#00b050;"> </span></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, 2023 and 2022 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;">​</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.55%;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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.23%;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 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:72.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.78%;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;">2023</b></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:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.23%;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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:72.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;">Foreign (not subject to income taxes)</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 10,002,233</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;background:#cceeff;margin: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,958,583</p></td></tr><tr><td style="vertical-align:top;width:72.55%;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.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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 0pt 0.05pt 0pt;"> (742,367)</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (987,279)</p></td></tr><tr><td style="vertical-align:top;width:72.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;">United States</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;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;"> </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;"> 27,649,330</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;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,394,642</p></td></tr><tr><td style="vertical-align:top;width:72.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"> 36,909,196</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.84%;margin: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,365,946</p></td></tr><tr><td style="vertical-align:top;width:72.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;">Discontinued operations</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;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;"> </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,086,744</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;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,371,049</p></td></tr><tr><td style="vertical-align:top;width:72.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;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;"> 37,995,940</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;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.84%;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,736,995</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p> 10002233 6958583 -742367 -987279 27649330 1394642 36909196 7365946 1086744 2371049 37995940 9736995 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company’s provision for (benefit from) income taxes for the years ended December 31, 2023 and 2022, 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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">Year Ended December 31, </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;">​</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;">    </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;">2023</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;">    </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;">2022</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;">Current:</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;">​</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="visibility:hidden;">​</span></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;"><span style="visibility:hidden;">​</span></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;">​</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="visibility:hidden;">​</span></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;"><span style="visibility:hidden;">​</span></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 6pt;">Federal</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;">​</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;">$</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;"> 5,611,360</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;">​</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;">$</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;"> 430,116</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 6pt;">State</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;">​</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="visibility:hidden;">​</span></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;"> 1,663,653</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;">​</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="visibility:hidden;">​</span></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;"> (29,157)</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 6pt;">Foreign</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;">​</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;">​</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;"> —</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;">​</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;">​</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;"> —</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 6pt;">Total current income tax expense (benefit)</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;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;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,275,013</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;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;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;"> 400,959</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;">Deferred:</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;">​</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;"> </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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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;"> </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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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 6pt;">Federal</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;">​</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="visibility:hidden;">​</span></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;"> (276,070)</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;">​</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="visibility:hidden;">​</span></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;"> (184,469)</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 6pt;">State</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;">​</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="visibility:hidden;">​</span></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 0pt 0.05pt 0pt;"> (248,929)</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;">​</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="visibility:hidden;">​</span></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;"> 180,249</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 6pt;">Foreign</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;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;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;"> —</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;">​</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;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;"> —</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 6pt;">Total deferred income tax expense (benefit)</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;">​</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;">​</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 0pt 0.05pt 0pt;"> (524,999)</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;">​</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;">​</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 0pt 0.05pt 0pt;"> (4,220)</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;">Total provision for (benefit from) income taxes</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;">​</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;"> 6,750,014</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;">​</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;"> 396,739</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p> 5611360 430116 1663653 -29157 7275013 400959 -276070 -184469 -248929 180249 -524999 -4220 6750014 396739 <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 years ended December 31, 2023 and 2022 is as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:72.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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;">​</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:23.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;">Year Ended December 31, </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;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:bottom;width:72.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;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;">2023</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;">    </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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</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;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:top;width:72.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;">U.S. statutory federal rate</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;background:#cceeff;margin: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.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;">%  </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;"> 21.00</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:72.38%;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.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;margin: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.88</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;">%  </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;"> 8.88</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><tr><td style="vertical-align:top;width:72.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;">Foreign rate differential</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (5.71)</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;">%  </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 0pt 0.05pt 0pt;"> (25.57)</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:bottom;white-space:nowrap;width:72.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Research and development tax credit</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</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;">%  </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;"> (1.92)</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><tr><td style="vertical-align:top;width:72.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;">Permanent items</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;background:#cceeff;margin: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.32)</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;">%  </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 0pt 0.05pt 0pt;"> (0.70)</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:72.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Change in valuation allowance</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;border-bottom: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;"> (0.08)</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;">%  </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;"> 2.38</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><tr><td style="vertical-align:bottom;width:72.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;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.39%;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;"> 17.77</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;">%  </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;"> 4.07</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></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p> 0.2100 0.2100 0.0288 0.0888 -0.0571 -0.2557 0.0192 -0.0032 -0.0070 -0.0008 0.0238 0.1777 0.0407 <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’s net long-term deferred tax liability as of December 31, 2023 and 2022 were as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;white-space:nowrap;width:72.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;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;">​</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;"><b style="font-weight:bold;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:72.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.19%;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;">2023</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;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.19%;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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;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:1.77%;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;">​</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;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;">​</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;"><span style="font-size:8pt;visibility:hidden;">​</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;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;">​</span></p></td></tr><tr><td style="vertical-align:top;width:72.11%;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:1.77%;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:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </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;"> </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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:72.11%;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 and development credit carryforwards</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 58,069</p></td></tr><tr><td style="vertical-align:top;width:72.11%;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;"> Net operating loss carryforwards</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 130,911</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 443,076</p></td></tr><tr><td style="vertical-align:top;width:72.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;"> Accruals and reserves</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 146,057</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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,503</p></td></tr><tr><td style="vertical-align:top;width:72.11%;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;"> Operating lease liabilities</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 501,397</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 412,840</p></td></tr><tr><td style="vertical-align:top;width:72.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;"> Capitalized research expenditures</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 326,178</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:72.11%;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;"> Others</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 29,094</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:top;width:72.11%;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:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;border-bottom:1px 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;"> —</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;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (29,036)</p></td></tr><tr><td style="vertical-align:top;width:72.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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,133,637</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;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> 967,452</p></td></tr><tr><td style="vertical-align:top;width:72.11%;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:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </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;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:72.11%;background:#cceeff;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:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 325,473</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;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 293,195</p></td></tr><tr><td style="vertical-align:top;width:72.11%;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:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 847,450</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;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 821,723</p></td></tr><tr><td style="vertical-align:top;width:72.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Operating lease right-of-use assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> 491,494</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;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> 412,840</p></td></tr><tr><td style="vertical-align:top;width:72.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;border-bottom:1px 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,664,417</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;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;border-bottom:1px 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,527,758</p></td></tr><tr><td style="vertical-align:top;width:72.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;">​</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;">​</span></p></td></tr><tr><td style="vertical-align:top;width:72.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net deferred tax liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> (530,780)</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;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> (560,306)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;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:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;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:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;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:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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,844,847</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;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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,378,177</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;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:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 2,818,663</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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 0pt 0pt;"> 2,163,681</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;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:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,015,484</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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,274,858</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;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:1.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> (15,678,994)</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;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> (11,816,716)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> —</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;"><span style="visibility:hidden;">​</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.16%;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;"> —</p></td></tr></table> 0 58069 130911 443076 146057 82503 501397 412840 326178 0 29094 0 0 29036 1133637 967452 325473 293195 847450 821723 491494 412840 1664417 1527758 530780 560306 5844847 5378177 2818663 2163681 7015484 4274858 15678994 11816716 0 0 600000 300000 19500000 <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;">Earnings per share (“EPS”) is computed on a basic and diluted basis. Basic EPS is computed by dividing net income (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 </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">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;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></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;">​</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.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;">​</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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</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:8pt;margin:0pt 0pt 0.05pt 0pt;">    </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:73.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;">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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 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;"> 30,672,135</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;">​</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 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;"> 8,227,343</p></td></tr><tr><td style="vertical-align:top;width:73.09%;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.3%;margin:0pt;padding:0pt;"><p style="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;">​</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 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;"> (15,513)</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;">​</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 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;"> (11,532)</p></td></tr><tr><td style="vertical-align:top;width:73.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;">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.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="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;">​</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 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;"> 30,656,622</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;">​</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 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;"> 8,215,811</p></td></tr><tr><td style="vertical-align:top;width:73.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Loss from discontinued operations</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 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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 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,086,744)</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;">​</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 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,371,049)</p></td></tr><tr><td style="vertical-align:top;width:73.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;">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.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"> 29,569,878</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"> 5,844,762</p></td></tr><tr><td style="vertical-align:top;width:73.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="visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:73.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;">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.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="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;">​</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 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;"> 15,739,056</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;">​</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 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;"> 15,290,509</p></td></tr><tr><td style="vertical-align:top;width:73.09%;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.3%;margin:0pt;padding:0pt;"><p style="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;">​</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 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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;">​</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 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 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:73.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;">Weighted average number of preferred shares outstanding during the period</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 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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 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;"> 39,885</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;">​</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 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;"> 31,885</p></td></tr><tr><td style="vertical-align:top;width:73.09%;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.3%;margin:0pt;padding:0pt;"><p style="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;">​</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 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;"> 86,956</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;">​</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 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;"> 79,259</p></td></tr><tr><td style="vertical-align:top;width:73.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;">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.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"> 15,865,897</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"> 15,401,653</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</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;">​</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.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;">​</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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:73.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;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';"> </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</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:8pt;margin:0pt 0pt 0.05pt 0pt;">    </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:73.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;">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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 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;"> 30,672,135</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;">​</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 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;"> 8,227,343</p></td></tr><tr><td style="vertical-align:top;width:73.09%;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.3%;margin:0pt;padding:0pt;"><p style="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;">​</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 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;"> (15,513)</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;">​</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 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;"> (11,532)</p></td></tr><tr><td style="vertical-align:top;width:73.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;">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.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="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;">​</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 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;"> 30,656,622</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;">​</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 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;"> 8,215,811</p></td></tr><tr><td style="vertical-align:top;width:73.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Loss from discontinued operations</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 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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 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,086,744)</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;">​</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 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,371,049)</p></td></tr><tr><td style="vertical-align:top;width:73.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;">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.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"> 29,569,878</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"> 5,844,762</p></td></tr><tr><td style="vertical-align:top;width:73.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="visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:73.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;">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.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="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;">​</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 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;"> 15,739,056</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;">​</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 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;"> 15,290,509</p></td></tr><tr><td style="vertical-align:top;width:73.09%;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.3%;margin:0pt;padding:0pt;"><p style="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;">​</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 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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;">​</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 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 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:73.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;">Weighted average number of preferred shares outstanding during the period</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 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">​</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 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;"> 39,885</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;">​</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 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;"> 31,885</p></td></tr><tr><td style="vertical-align:top;width:73.09%;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.3%;margin:0pt;padding:0pt;"><p style="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;">​</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 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;"> 86,956</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;">​</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 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;"> 79,259</p></td></tr><tr><td style="vertical-align:top;width:73.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;">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.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"> 15,865,897</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"> 15,401,653</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> 30672135 8227343 15513 11532 30656622 8215811 -1086744 -2371049 29569878 5844762 15739056 15290509 39885 31885 86956 79259 15865897 15401653 <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 A common stock and redeemable preferred stock for each quarter of the respective years ended December 31, 2023 and 2022 were as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:74.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.64%;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;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:74.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;">First Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 0.085</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;background:#cceeff;margin: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:74.25%;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.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;">​</span></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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 0.085</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin: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:74.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;">Third Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 0.095</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;background:#cceeff;margin: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:74.25%;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.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px 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.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;"> 0.095</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px 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:7.9%;border-bottom:1px 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:74.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;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.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;"> 0.36</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;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:7.9%;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:#00b050;font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:74.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.64%;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;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.35%;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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:74.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;">First Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 0.085</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;background:#cceeff;margin: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:74.25%;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.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;">​</span></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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 0.085</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;margin: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:74.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;">Third Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 0.095</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.9%;background:#cceeff;margin: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:74.25%;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.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px 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.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;"> 0.095</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px 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:7.9%;border-bottom:1px 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:74.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;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.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;"> 0.36</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;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:7.9%;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:#00b050;font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> 0.085 0.085 0.085 0.085 0.095 0.085 0.095 0.085 0.36 0.34 <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 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 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 2. The Company evaluates each segment’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’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;">​</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:34.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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:34.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;visibility:hidden;">​</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;"> </p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:65.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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:34.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;visibility:hidden;">​</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;"> </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;">Retail</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;">    </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;">Bulk</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;">    </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;">Services</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;">    </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;">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:8pt;margin:0pt 0pt 0.05pt 0pt;">    </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: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:34.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;">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;">​</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;"> 30,158,051</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;">​</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;"> 34,595,058</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;">​</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;"> 97,966,650</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;">​</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;"> 17,491,474</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </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;"> 180,211,233</p></td></tr><tr><td style="vertical-align:bottom;width:34.37%;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;">​</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 3pt 0.05pt 0pt;"> 13,891,229</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;">​</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 3pt 0.05pt 0pt;"> 24,128,132</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;">​</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 3pt 0.05pt 0pt;"> 66,797,762</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;">​</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 3pt 0.05pt 0pt;"> 13,467,005</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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: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;"> 118,284,128</p></td></tr><tr><td style="vertical-align:bottom;width:34.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;">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;">​</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;"> 16,266,822</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;">​</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;"> 10,466,926</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;">​</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;"> 31,168,888</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;">​</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;"> 4,024,469</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 61,927,105</p></td></tr><tr><td style="vertical-align:bottom;width:34.37%;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;">​</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;"> 16,905,010</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;">​</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,737,264</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;">​</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;"> 4,271,808</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;">​</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,838,284</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 24,752,366</p></td></tr><tr><td style="vertical-align:bottom;width:34.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;">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;">​</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;"> </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;"> (22,065)</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;">​</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;"> </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;"> 12,720</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;">​</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;"> </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;"> —</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;">​</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;"> </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,233</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;"> (7,112)</p></td></tr><tr><td style="vertical-align:bottom;width:34.37%;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;">​</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;"> (660,253)</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;">​</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 3pt 0.05pt 0pt;"> 8,742,382</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;">​</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 3pt 0.05pt 0pt;"> 26,897,080</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;">​</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 3pt 0.05pt 0pt;"> 2,188,418</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 37,167,627</p></td></tr><tr><td style="vertical-align:bottom;width:34.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;">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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;"> 828,313</p></td></tr><tr><td style="vertical-align:bottom;width:34.37%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 37,995,940</p></td></tr><tr><td style="vertical-align:bottom;width:34.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;">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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;"> 6,750,014</p></td></tr><tr><td style="vertical-align:bottom;width:34.37%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 31,245,926</p></td></tr><tr><td style="vertical-align:bottom;width:34.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;">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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;"> 573,791</p></td></tr><tr><td style="vertical-align:top;width:34.37%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 30,672,135</p></td></tr><tr><td style="vertical-align:top;width:34.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;">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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;"> (1,086,744)</p></td></tr><tr><td style="vertical-align:bottom;width:34.37%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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: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;"> 29,585,391</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;">​</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 year ended December 31, 2023 for the retail, bulk, services and manufacturing segments were $2,484,845, $3,032,902, $785,347 and $273,360, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:34.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%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:34.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;"> </p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:64.8%;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;">As of December 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:34.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;"> </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;">Retail</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;">    </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;">Bulk</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;">    </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;">Services</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;">    </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;">Manufacturing</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;">    </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: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:top;width:34.78%;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;">​</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;"> 3,425,948</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;">​</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,965,126</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;">​</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;"> 6,802,780</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;">​</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;"> 1,033,037</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;">​</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;"> 38,226,891</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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;">​</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,041,460</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;">​</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;"> 4,858,324</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;">​</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;"> 55,272</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;">​</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,135,357</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;">​</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;"> 11,090,413</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Contract 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;">​</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;"> —</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;">​</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;"> —</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;">​</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;"> 17,715,872</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;">​</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;"> 3,837,185</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;">​</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;"> 21,553,057</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 32,809,487</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;">​</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;"> 20,370,056</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;">​</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,143,884 </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;">​</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,559,094</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;">​</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;"> 55,882,521</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;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%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 380,436</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;">​</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;"> —</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;">​</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;"> —</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;">​</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;"> 115,035</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;">​</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;"> 495,471</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> —</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;">​</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;"> —</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;">​</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,692,074</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;">​</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;"> 661,111</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;">​</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;"> 3,353,185</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;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%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 1,170,511</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;">​</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;"> 1,948,875</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;">​</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;"> 7,756,807</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;">​</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;"> 1,985,211</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;">​</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;"> 12,861,404</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 58,774,647</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;">​</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;"> 63,956,725</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;">​</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;">58,476,773 </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;">​</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;"> 15,888,642</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;">​</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;"> 197,096,787</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;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%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;">​</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="visibility:hidden;">​</span></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;">​</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;">​</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="visibility:hidden;">​</span></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;">​</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;">​</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="visibility:hidden;">​</span></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;">​</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;">​</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="visibility:hidden;">​</span></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;">​</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;"> 21,340,805</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;">​</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="visibility:hidden;">​</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="visibility:hidden;">​</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;">​</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="visibility:hidden;">​</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="visibility:hidden;">​</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;">​</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="visibility:hidden;">​</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="visibility:hidden;">​</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;">​</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="visibility:hidden;">​</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="visibility:hidden;">​</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;"> 218,437,592</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:36.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:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:36.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;">​</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;"> </p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:63.08%;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 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.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;">​</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;"> </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;">Retail</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;">    </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;">Bulk</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;">    </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;">Services</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;">    </p></td><td colspan="2" 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:8pt;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:1.64%;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 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;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:36.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;">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;">​</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;"> 25,954,013</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;">​</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;"> 32,991,066</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;">​</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;"> 28,835,428</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</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;"> 6,324,465</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;">​</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;"> 94,104,972</p></td></tr><tr><td style="vertical-align:top;width:36.5%;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;">​</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 3pt 0.05pt 0pt;"> 12,548,763</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;">​</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 3pt 0.05pt 0pt;"> 23,032,212</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;">​</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 3pt 0.05pt 0pt;"> 22,973,634</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:1px 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:9.37%;border-bottom:1px 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,195,240</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;">​</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 3pt 0.05pt 0pt;"> 63,749,849</p></td></tr><tr><td style="vertical-align:top;width:36.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;">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;">​</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;"> 13,405,250</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;">​</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,958,854</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;">​</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;"> 5,861,794</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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;"> 1,129,225</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;">​</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;"> 30,355,123</p></td></tr><tr><td style="vertical-align:top;width:36.5%;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;">​</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;"> 14,552,866</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;">​</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,570,732</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;">​</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,461,294</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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%;margin: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,485,342</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;">​</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;"> 21,070,234</p></td></tr><tr><td style="vertical-align:top;width:36.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;">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;">​</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;"> </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;"> (39,397)</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;">​</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;"> </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;"> 5,607</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;">​</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;"> </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;"> 23,717</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;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;"> </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 0pt 0.05pt 0pt;"> (2,631)</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;">​</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;"> </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;"> (12,704)</p></td></tr><tr><td style="vertical-align:top;width:36.5%;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;">​</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,187,013)</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;">​</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 3pt 0.05pt 0pt;"> 8,393,729</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;">​</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 3pt 0.05pt 0pt;"> 2,424,217</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:1px 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:9.37%;border-bottom: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;"> (358,748)</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;">​</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;"> 9,272,185</p></td></tr><tr><td style="vertical-align:top;width:36.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;">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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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 0pt 0.05pt 0pt;">  </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;">​</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;"> </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;"> 464,810</p></td></tr><tr><td style="vertical-align:top;width:36.5%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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;">​</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;"> 9,736,995</p></td></tr><tr><td style="vertical-align:top;width:36.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;">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;">​</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;">​</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;">​</span></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;">​</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;">​</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;">​</span></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;">​</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;">​</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;">​</span></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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><span style="visibility:hidden;">​</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:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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;"><span style="visibility:hidden;">​</span></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;"> 396,739</p></td></tr><tr><td style="vertical-align:top;width:36.5%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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;">​</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;"> 9,340,256</p></td></tr><tr><td style="vertical-align:top;width:36.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;">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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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 0pt 0.05pt 0pt;">  </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;">​</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;"> </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,112,913</p></td></tr><tr><td style="vertical-align:top;width:36.5%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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;">​</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;"> 8,227,343</p></td></tr><tr><td style="vertical-align:top;width:36.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;">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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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 0pt 0.05pt 0pt;">  </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;">​</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;"> </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;"> (2,371,049)</p></td></tr><tr><td style="vertical-align:top;width:36.5%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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;">​</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: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;"> 5,856,294</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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 year ended December 31, 2022 for the retail, bulk, services and manufacturing segments were $2,391,603, $2,836,794, $674,508 and $284,403, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:34.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%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:34.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;"> </p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:64.8%;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;">As of December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:34.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;"> </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;">Retail</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;">    </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;">Bulk</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;">    </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;">Services</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;">    </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;">Manufacturing</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;">    </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: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:top;width:34.78%;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;">​</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,953,927</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;">​</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;"> 16,554,940</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;">​</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;"> 5,838,721</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;">​</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;"> 1,698,594</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;">​</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,046,182</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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;">​</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,759,659</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;">​</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;"> 4,037,684</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;">​</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;"> —</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;">​</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,481,486</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;">​</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,278,829</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Contract 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;">​</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;"> —</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;">​</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;"> —</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;">​</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;"> 1,249,069</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;">​</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;"> 1,664,653</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;">​</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;"> 2,913,722</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 27,697,490</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;">​</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;"> 22,510,658</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;">​</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;"> 759,409</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;">​</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,561,988</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;">​</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;"> 52,529,545</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;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%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 3,643,889</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;">​</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;"> —</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;">​</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;"> —</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;">​</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,792</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;">​</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,705,681</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> —</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;">​</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;"> —</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;">​</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,064,444</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;">​</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;"> 754,444</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;">​</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;"> 2,818,888</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;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%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 1,170,511</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;">​</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;"> 1,948,875</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;">​</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;"> 5,320,416</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;">​</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;"> 1,985,211</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;">​</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;"> 10,425,013</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 65,853,789</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;">​</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;"> 56,118,243</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;">​</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;"> 36,319,078</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;">​</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;"> 13,054,971</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;">​</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;"> 171,346,081</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;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%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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;"> 21,660,768</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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;"> 193,006,849</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Revenue earned by major geographic region was:</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;">​</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.8%;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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.55%;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 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;">    </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</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;">    </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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:72.8%;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.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;">​</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;"> 41,728,340</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;">​</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;"> 30,375,985</p></td></tr><tr><td style="vertical-align:top;width:72.8%;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.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;">​</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;"> 31,221,633</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;">​</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;"> 29,943,615</p></td></tr><tr><td style="vertical-align:top;width:72.8%;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.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;">​</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;"> 106,768,621</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;">​</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;"> 33,338,466</p></td></tr><tr><td style="vertical-align:top;width:72.8%;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 management services agreement with OC-BVI</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;">​</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: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;"> 492,639</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;">​</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 3pt 0.05pt 0pt;"> 446,906</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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: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;"> 180,211,233</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;">​</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: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;"> 94,104,972</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Revenue earned from major customers was:</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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 31, </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;">​</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;">    </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;">2023</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;">    </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;">2022</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 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;">​</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;"> 31,221,633</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;">​</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;"> 29,943,615</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;">​</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;">17%</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;">​</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;">32%</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 service 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;">​</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;"> 64,149,170</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;">​</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;"> 11,805,752</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 service 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;">​</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;">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;">​</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;">13%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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 was:</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.94%;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 31, </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;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 colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">2023</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;">    </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;">2022</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.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 32,902,949</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;">​</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,068,156</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.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"> 20,039,049</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;">​</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;"> 22,031,690</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.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> </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,940,523</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;">​</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;"> </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,429,699</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> 55,882,521</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;">​</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,529,545</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company’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;">​</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:34.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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:34.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;visibility:hidden;">​</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;"> </p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:65.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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:34.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;visibility:hidden;">​</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;"> </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;">Retail</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;">    </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;">Bulk</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;">    </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;">Services</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;">    </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;">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:8pt;margin:0pt 0pt 0.05pt 0pt;">    </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: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:34.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;">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;">​</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;"> 30,158,051</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;">​</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;"> 34,595,058</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;">​</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;"> 97,966,650</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;">​</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;"> 17,491,474</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </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;"> 180,211,233</p></td></tr><tr><td style="vertical-align:bottom;width:34.37%;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;">​</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 3pt 0.05pt 0pt;"> 13,891,229</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;">​</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 3pt 0.05pt 0pt;"> 24,128,132</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;">​</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 3pt 0.05pt 0pt;"> 66,797,762</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;">​</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 3pt 0.05pt 0pt;"> 13,467,005</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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: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;"> 118,284,128</p></td></tr><tr><td style="vertical-align:bottom;width:34.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;">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;">​</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;"> 16,266,822</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;">​</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;"> 10,466,926</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;">​</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;"> 31,168,888</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;">​</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;"> 4,024,469</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 61,927,105</p></td></tr><tr><td style="vertical-align:bottom;width:34.37%;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;">​</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;"> 16,905,010</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;">​</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,737,264</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;">​</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;"> 4,271,808</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;">​</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,838,284</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 24,752,366</p></td></tr><tr><td style="vertical-align:bottom;width:34.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;">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;">​</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;"> </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;"> (22,065)</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;">​</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;"> </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;"> 12,720</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;">​</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;"> </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;"> —</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;">​</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;"> </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,233</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;"> (7,112)</p></td></tr><tr><td style="vertical-align:bottom;width:34.37%;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;">​</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;"> (660,253)</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;">​</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 3pt 0.05pt 0pt;"> 8,742,382</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;">​</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 3pt 0.05pt 0pt;"> 26,897,080</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;">​</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 3pt 0.05pt 0pt;"> 2,188,418</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 37,167,627</p></td></tr><tr><td style="vertical-align:bottom;width:34.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;">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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;"> 828,313</p></td></tr><tr><td style="vertical-align:bottom;width:34.37%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 37,995,940</p></td></tr><tr><td style="vertical-align:bottom;width:34.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;">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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;"> 6,750,014</p></td></tr><tr><td style="vertical-align:bottom;width:34.37%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 31,245,926</p></td></tr><tr><td style="vertical-align:bottom;width:34.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;">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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;"> 573,791</p></td></tr><tr><td style="vertical-align:top;width:34.37%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 30,672,135</p></td></tr><tr><td style="vertical-align:top;width:34.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;">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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;"> (1,086,744)</p></td></tr><tr><td style="vertical-align:bottom;width:34.37%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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: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;"> 29,585,391</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;">​</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 year ended December 31, 2023 for the retail, bulk, services and manufacturing segments were $2,484,845, $3,032,902, $785,347 and $273,360, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:34.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%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:34.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;"> </p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:64.8%;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;">As of December 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:34.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;"> </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;">Retail</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;">    </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;">Bulk</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;">    </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;">Services</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;">    </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;">Manufacturing</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;">    </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: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:top;width:34.78%;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;">​</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;"> 3,425,948</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;">​</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,965,126</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;">​</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;"> 6,802,780</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;">​</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;"> 1,033,037</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;">​</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;"> 38,226,891</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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;">​</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,041,460</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;">​</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;"> 4,858,324</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;">​</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;"> 55,272</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;">​</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,135,357</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;">​</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;"> 11,090,413</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Contract 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;">​</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;"> —</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;">​</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;"> —</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;">​</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;"> 17,715,872</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;">​</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;"> 3,837,185</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;">​</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;"> 21,553,057</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 32,809,487</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;">​</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;"> 20,370,056</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;">​</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,143,884 </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;">​</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,559,094</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;">​</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;"> 55,882,521</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;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%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 380,436</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;">​</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;"> —</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;">​</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;"> —</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;">​</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;"> 115,035</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;">​</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;"> 495,471</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> —</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;">​</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;"> —</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;">​</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,692,074</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;">​</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;"> 661,111</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;">​</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;"> 3,353,185</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;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%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 1,170,511</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;">​</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;"> 1,948,875</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;">​</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;"> 7,756,807</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;">​</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;"> 1,985,211</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;">​</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;"> 12,861,404</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 58,774,647</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;">​</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;"> 63,956,725</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;">​</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;">58,476,773 </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;">​</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;"> 15,888,642</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;">​</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;"> 197,096,787</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;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%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;">​</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="visibility:hidden;">​</span></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;">​</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;">​</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="visibility:hidden;">​</span></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;">​</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;">​</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="visibility:hidden;">​</span></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;">​</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;">​</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="visibility:hidden;">​</span></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;">​</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;"> 21,340,805</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;">​</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="visibility:hidden;">​</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="visibility:hidden;">​</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;">​</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="visibility:hidden;">​</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="visibility:hidden;">​</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;">​</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="visibility:hidden;">​</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="visibility:hidden;">​</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;">​</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="visibility:hidden;">​</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="visibility:hidden;">​</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;"> 218,437,592</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:36.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:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:36.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;">​</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;"> </p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:63.08%;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 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:36.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;">​</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;"> </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;">Retail</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;">    </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;">Bulk</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;">    </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;">Services</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;">    </p></td><td colspan="2" 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:8pt;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:1.64%;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 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;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:36.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;">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;">​</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;"> 25,954,013</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;">​</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;"> 32,991,066</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;">​</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;"> 28,835,428</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</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;"> 6,324,465</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;">​</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;"> 94,104,972</p></td></tr><tr><td style="vertical-align:top;width:36.5%;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;">​</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 3pt 0.05pt 0pt;"> 12,548,763</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;">​</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 3pt 0.05pt 0pt;"> 23,032,212</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;">​</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 3pt 0.05pt 0pt;"> 22,973,634</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:1px 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:9.37%;border-bottom:1px 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,195,240</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;">​</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 3pt 0.05pt 0pt;"> 63,749,849</p></td></tr><tr><td style="vertical-align:top;width:36.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;">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;">​</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;"> 13,405,250</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;">​</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,958,854</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;">​</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;"> 5,861,794</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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;"> 1,129,225</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;">​</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;"> 30,355,123</p></td></tr><tr><td style="vertical-align:top;width:36.5%;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;">​</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;"> 14,552,866</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;">​</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,570,732</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;">​</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,461,294</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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%;margin: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,485,342</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;">​</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;"> 21,070,234</p></td></tr><tr><td style="vertical-align:top;width:36.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;">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;">​</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;"> </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;"> (39,397)</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;">​</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;"> </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;"> 5,607</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;">​</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;"> </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;"> 23,717</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;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;"> </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 0pt 0.05pt 0pt;"> (2,631)</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;">​</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;"> </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;"> (12,704)</p></td></tr><tr><td style="vertical-align:top;width:36.5%;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;">​</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,187,013)</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;">​</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 3pt 0.05pt 0pt;"> 8,393,729</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;">​</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 3pt 0.05pt 0pt;"> 2,424,217</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:1px 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:9.37%;border-bottom: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;"> (358,748)</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;">​</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;"> 9,272,185</p></td></tr><tr><td style="vertical-align:top;width:36.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;">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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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 0pt 0.05pt 0pt;">  </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;">​</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;"> </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;"> 464,810</p></td></tr><tr><td style="vertical-align:top;width:36.5%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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;">​</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;"> 9,736,995</p></td></tr><tr><td style="vertical-align:top;width:36.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;">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;">​</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;">​</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;">​</span></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;">​</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;">​</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;">​</span></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;">​</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;">​</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;">​</span></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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"><span style="visibility:hidden;">​</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:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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;"><span style="visibility:hidden;">​</span></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;"> 396,739</p></td></tr><tr><td style="vertical-align:top;width:36.5%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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;">​</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;"> 9,340,256</p></td></tr><tr><td style="vertical-align:top;width:36.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;">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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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 0pt 0.05pt 0pt;">  </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;">​</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;"> </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,112,913</p></td></tr><tr><td style="vertical-align:top;width:36.5%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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;">​</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;"> 8,227,343</p></td></tr><tr><td style="vertical-align:top;width:36.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;">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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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 0pt 0.05pt 0pt;">  </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;">​</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;"> </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;"> (2,371,049)</p></td></tr><tr><td style="vertical-align:top;width:36.5%;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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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;">​</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: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;"> 5,856,294</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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 year ended December 31, 2022 for the retail, bulk, services and manufacturing segments were $2,391,603, $2,836,794, $674,508 and $284,403, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:34.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%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:34.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;"> </p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:64.8%;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;">As of December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:34.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;"> </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;">Retail</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;">    </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;">Bulk</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;">    </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;">Services</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;">    </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;">Manufacturing</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;">    </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: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:top;width:34.78%;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;">​</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,953,927</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;">​</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;"> 16,554,940</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;">​</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;"> 5,838,721</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;">​</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;"> 1,698,594</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;">​</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,046,182</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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;">​</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,759,659</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;">​</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;"> 4,037,684</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;">​</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;"> —</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;">​</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,481,486</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;">​</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,278,829</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Contract 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;">​</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;"> —</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;">​</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;"> —</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;">​</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;"> 1,249,069</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;">​</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;"> 1,664,653</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;">​</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;"> 2,913,722</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 27,697,490</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;">​</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;"> 22,510,658</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;">​</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;"> 759,409</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;">​</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,561,988</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;">​</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;"> 52,529,545</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;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%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 3,643,889</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;">​</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;"> —</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;">​</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;"> —</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;">​</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,792</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;">​</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,705,681</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> —</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;">​</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;"> —</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;">​</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,064,444</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;">​</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;"> 754,444</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;">​</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;"> 2,818,888</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;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%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 1,170,511</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;">​</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;"> 1,948,875</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;">​</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;"> 5,320,416</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;">​</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;"> 1,985,211</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;">​</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;"> 10,425,013</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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;"> 65,853,789</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;">​</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;"> 56,118,243</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;">​</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;"> 36,319,078</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;">​</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;"> 13,054,971</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;">​</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;"> 171,346,081</p></td></tr><tr><td style="vertical-align:top;width:34.78%;background:#cceeff;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%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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;"> 21,660,768</p></td></tr><tr><td style="vertical-align:top;width:34.78%;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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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;"> 193,006,849</p></td></tr></table> 30158051 34595058 97966650 17491474 180211233 13891229 24128132 66797762 13467005 118284128 16266822 10466926 31168888 4024469 61927105 16905010 1737264 4271808 1838284 24752366 -22065 12720 2233 -7112 -660253 8742382 26897080 2188418 37167627 828313 37995940 6750014 31245926 573791 30672135 -1086744 29585391 2484845 3032902 785347 273360 3425948 26965126 6802780 1033037 38226891 3041460 4858324 55272 3135357 11090413 17715872 3837185 21553057 32809487 20370056 1143884 1559094 55882521 380436 115035 495471 2692074 661111 3353185 1170511 1948875 7756807 1985211 12861404 58774647 63956725 58476773 15888642 197096787 21340805 218437592 25954013 32991066 28835428 6324465 94104972 12548763 23032212 22973634 5195240 63749849 13405250 9958854 5861794 1129225 30355123 14552866 1570732 3461294 1485342 21070234 -39397 5607 23717 -2631 -12704 -1187013 8393729 2424217 -358748 9272185 464810 9736995 396739 9340256 1112913 8227343 -2371049 5856294 2391603 2836794 674508 284403 2953927 16554940 5838721 1698594 27046182 2759659 4037684 3481486 10278829 1249069 1664653 2913722 27697490 22510658 759409 1561988 52529545 3643889 61792 3705681 2064444 754444 2818888 1170511 1948875 5320416 1985211 10425013 65853789 56118243 36319078 13054971 171346081 21660768 193006849 <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;">​</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.8%;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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.55%;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 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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;">    </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</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;">    </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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:72.8%;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.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;">​</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;"> 41,728,340</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;">​</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;"> 30,375,985</p></td></tr><tr><td style="vertical-align:top;width:72.8%;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.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;">​</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;"> 31,221,633</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;">​</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;"> 29,943,615</p></td></tr><tr><td style="vertical-align:top;width:72.8%;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.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;">​</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;"> 106,768,621</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;">​</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;"> 33,338,466</p></td></tr><tr><td style="vertical-align:top;width:72.8%;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 management services agreement with OC-BVI</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;">​</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: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;"> 492,639</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;">​</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 3pt 0.05pt 0pt;"> 446,906</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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: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;"> 180,211,233</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;">​</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: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;"> 94,104,972</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Revenue earned from major customers was:</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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 31, </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;">​</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;">    </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;">2023</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;">    </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;">2022</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 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;">​</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;"> 31,221,633</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;">​</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;"> 29,943,615</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;">​</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;">17%</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;">​</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;">32%</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 service 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;">​</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;"> 64,149,170</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;">​</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;"> 11,805,752</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 service 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;">​</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;">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;">​</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;">13%</p></td></tr></table> 41728340 30375985 31221633 29943615 106768621 33338466 492639 446906 180211233 94104972 31221633 29943615 0.17 0.32 64149170 11805752 0.36 0.13 <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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.94%;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 31, </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;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 colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">2023</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;">    </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;">2022</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.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 32,902,949</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;">​</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,068,156</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.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"> 20,039,049</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;">​</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;"> 22,031,690</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.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> </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,940,523</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;">​</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;"> </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,429,699</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;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;"> 55,882,521</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;">​</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,529,545</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> 32902949 28068156 20039049 22031690 2940523 2429699 55882521 52529545 <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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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.8%;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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding: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;">​</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;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.55%;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 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding: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;">​</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;">    </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</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;">    </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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:72.8%;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.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;">​</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;">​</span></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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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;">​</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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Subcontractor and other project costs</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;">​</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;"> 64,806,072</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;">​</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;"> 17,847,124</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 18,935,014</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;">​</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;"> 14,036,117</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 9,502,666</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;">​</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;"> 6,975,129</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;background:#cceeff;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.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;">​</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;"> 9,024,836</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;">​</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;"> 10,203,690</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 5,632,998</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;">​</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;"> 5,261,463</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;background:#cceeff;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.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;">​</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;"> 2,992,872</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;">​</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,786,258</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 2,061,497</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;">​</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,782,333</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 1,842,924</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;">​</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;"> 1,590,250</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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: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;"> 3,485,249</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;">​</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 3pt 0.05pt 0pt;"> 3,267,485</p></td></tr><tr><td style="vertical-align:top;width:72.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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: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;"> 118,284,128</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;">​</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: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;"> 63,749,849</p></td></tr><tr><td style="vertical-align:top;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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;">​</span></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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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;">​</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;">​</span></p></td></tr><tr><td style="vertical-align:top;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.55%;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 31, </b></p></td></tr><tr><td style="vertical-align:top;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</span></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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</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="visibility:hidden;">​</span></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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:72.8%;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.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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 13,690,152</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;">​</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;"> 11,209,635</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;background:#cceeff;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.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;">​</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;"> 2,012,092</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;">​</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;"> 1,760,279</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 1,903,856</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;">​</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,067,625</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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’ fees and expenses</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;">​</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;"> 980,759</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;">​</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;"> 991,592</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Office rent</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;">​</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;">​</span></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;"> 882,686</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;">​</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;">​</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 0.05pt 0pt;"> 793,380</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 574,093</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;">​</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;"> 582,778</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Investor relations</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;">​</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;">​</span></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;"> 534,979</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;">​</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;">​</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 0.05pt 0pt;"> 354,158</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Business development expenses</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;">​</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;">​</span></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;"> 578,086</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;">​</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;">​</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 0.05pt 0pt;"> 395,660</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Provision for credit losses</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;">​</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;">​</span></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;"> 408,489</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;">​</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;">​</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 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Computer supplies, software licenses</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;">​</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;">​</span></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;"> 387,335</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;">​</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;">​</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 0.05pt 0pt;"> 322,310</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Bank charges</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;">​</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;">​</span></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;"> 341,263</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;">​</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;">​</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 0.05pt 0pt;"> 490,237</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 190,010</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;">​</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;"> 163,714</p></td></tr><tr><td style="vertical-align:top;width:72.8%;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.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;">​</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: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;"> 2,268,566</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;">​</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 3pt 0.05pt 0pt;"> 1,938,866</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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: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;"> 24,752,366</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;">​</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: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;"> 21,070,234</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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.8%;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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding: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;">​</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;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.55%;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 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding: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;">​</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;">    </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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</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;">    </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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:72.8%;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.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;">​</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;">​</span></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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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;">​</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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Subcontractor and other project costs</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;">​</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;"> 64,806,072</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;">​</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;"> 17,847,124</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 18,935,014</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;">​</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;"> 14,036,117</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 9,502,666</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;">​</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;"> 6,975,129</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;background:#cceeff;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.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;">​</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;"> 9,024,836</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;">​</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;"> 10,203,690</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 5,632,998</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;">​</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;"> 5,261,463</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;background:#cceeff;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.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;">​</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;"> 2,992,872</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;">​</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,786,258</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 2,061,497</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;">​</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,782,333</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 1,842,924</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;">​</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;"> 1,590,250</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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: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;"> 3,485,249</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;">​</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 3pt 0.05pt 0pt;"> 3,267,485</p></td></tr><tr><td style="vertical-align:top;width:72.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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: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;"> 118,284,128</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;">​</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: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;"> 63,749,849</p></td></tr><tr><td style="vertical-align:top;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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;">​</span></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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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;">​</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;">​</span></p></td></tr><tr><td style="vertical-align:top;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.55%;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 31, </b></p></td></tr><tr><td style="vertical-align:top;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</span></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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</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="visibility:hidden;">​</span></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;">2022</b></p></td></tr><tr><td style="vertical-align:top;width:72.8%;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.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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 13,690,152</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;">​</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;"> 11,209,635</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;background:#cceeff;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.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;">​</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;"> 2,012,092</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;">​</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;"> 1,760,279</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 1,903,856</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;">​</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,067,625</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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’ fees and expenses</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;">​</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;"> 980,759</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;">​</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;"> 991,592</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Office rent</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;">​</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;">​</span></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;"> 882,686</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;">​</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;">​</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 0.05pt 0pt;"> 793,380</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 574,093</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;">​</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;"> 582,778</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Investor relations</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;">​</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;">​</span></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;"> 534,979</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;">​</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;">​</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 0.05pt 0pt;"> 354,158</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Business development expenses</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;">​</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;">​</span></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;"> 578,086</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;">​</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;">​</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 0.05pt 0pt;"> 395,660</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Provision for credit losses</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;">​</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;">​</span></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;"> 408,489</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;">​</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;">​</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 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Computer supplies, software licenses</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;">​</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;">​</span></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;"> 387,335</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;">​</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;">​</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 0.05pt 0pt;"> 322,310</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Bank charges</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;">​</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;">​</span></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;"> 341,263</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;">​</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;">​</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 0.05pt 0pt;"> 490,237</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;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.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;">​</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;"> 190,010</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;">​</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;"> 163,714</p></td></tr><tr><td style="vertical-align:top;width:72.8%;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.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;">​</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: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;"> 2,268,566</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;">​</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 3pt 0.05pt 0pt;"> 1,938,866</p></td></tr><tr><td style="vertical-align:bottom;width:72.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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;">​</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: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;"> 24,752,366</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;">​</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: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;"> 21,070,234</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> 64806072 17847124 18935014 14036117 9502666 6975129 9024836 10203690 5632998 5261463 2992872 2786258 2061497 1782333 1842924 1590250 3485249 3267485 118284128 63749849 13690152 11209635 2012092 1760279 1903856 2067625 980759 991592 882686 793380 574093 582778 534979 354158 578086 395660 408489 387335 322310 341263 490237 190010 163714 2268566 1938866 24752366 21070234 <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’ and Directors’ 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__3NPowhbhk-K3CeQyq2DuQ;"><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’s preferred stock for $nil consideration under the Company’s Employee Share Incentive Plan. Once an individual becomes eligible for this plan, they are awarded shares of preferred stock in the month of June following their date of eligibility for the plan (the “grant date”) and in June of each subsequent year of the individual's employment for as long as the individual remains employed with the Company. If the employee remains with the Company through the fourth anniversary of a grant date, the preferred stock can be converted into shares of the Company’s common stock on a one for one basis. In addition, at the time the preferred stock is granted, the employee receives options to purchase an equal number of shares of preferred stock at a discount to the average trading price of the Company’s common stock for the first <span style="-sec-ix-hidden:Hidden_g_2BxQgWEEe4diqimMl8PQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">seven days</span></span> of the October 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 date. Each employee’s option to purchase shares of preferred stock must be exercised within <span style="-sec-ix-hidden:Hidden_cthyipTjrkWYSYrGhFNiWA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">30 days</span></span> of the grant date, which is the 90<sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">th</sup> day after the date of the independent registered public accountants’ audit opinion on the Company’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 years ended December 31, 2023 and 2022 totaled 13,309 and 9,295, respectively, and an equal number of preferred stock options were granted in each of these 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 four long-serving employees of the Company. Under the plan, these employees are granted in each calendar 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 40<sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">th</sup> day after the date of the Company’s Annual Shareholder Meeting. The number of options each employee is granted is equal to five times the sum of (i) the number of shares of preferred stock that employee receives for $nil consideration and (ii) the number of preferred stock options that employee exercises in that given year. Options may be exercised during the period commencing on the fourth anniversary of the grant date and ending on the 30<sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">th</sup> day after the fourth anniversary of the grant date. Options granted under this plan during the years ended December 31, 2023 and 2022 totaled 3,010 and 3,665, 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’s common stock. 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 14, 2008, the Company’s stockholders approved the 2008 Equity Incentive Plan (the “2008 Plan”) and reserved 1,500,000 shares of the Company’s Class 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;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 $703,289 and $386,260 for the years ended December 31, 2023 and 2022, 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 years ended December 31, 2023 and 2022 were as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:77.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </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;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.75%;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;">    </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;">2022</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;"> </b></p></td></tr><tr><td style="vertical-align:top;width:77.01%;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.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;"> </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;"> 5.06</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 1.64</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.01%;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.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 1.0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 1.2</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;">​</span></p></td></tr><tr><td style="vertical-align:top;width:77.01%;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.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;"> </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;"> 42.42</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 47.15</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.01%;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.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 1.60</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.35</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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">A summary of the Company’s stock option activity for the year ended December 31, 2023 is as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:58.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:58.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:8pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.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;">​</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;">​</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;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.83%;margin: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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.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:8pt;visibility:hidden;">​</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;">​</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;">​</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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.17%;margin: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;">​</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;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.83%;margin: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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.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:8pt;visibility:hidden;">​</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;">​</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;">​</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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.17%;margin: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;">​</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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.86%;margin: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:58.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:8pt;visibility:hidden;">​</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;">​</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;">​</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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.17%;margin: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;">​</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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.86%;margin: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:58.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:8pt;visibility:hidden;">​</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;">    </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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.17%;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;">    </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 (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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.86%;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 (1)</b></p></td></tr><tr><td style="vertical-align:top;width:58.32%;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;"> </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;"> 11,740</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;">​</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.14%;background:#cceeff;margin: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.59</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;"> </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;">  </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;"> </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:58.32%;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;"> </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;"> 16,319</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;">​</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:6.14%;margin: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.62</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;"> </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;">  </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;"> </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:58.32%;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;"> </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;"> (8,231)</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;">​</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.14%;background:#cceeff;margin: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.12</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;"> </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;">  </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;"> </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:58.32%;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;"> </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;"> (7,653)</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;">​</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:6.14%;border-bottom:1px 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.28</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;"> </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;">  </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;"> </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:58.32%;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 31, 2023</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;"> </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;"> 12,175</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;">​</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.14%;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;"> 16.08</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;"> </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.29</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  </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:7.83%;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;"> 237,705</p></td></tr><tr><td style="vertical-align:top;width:58.32%;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 31, 2023</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;"> </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;"> —</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;">​</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.14%;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;"> —</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;"> </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;"> —</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  </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:7.83%;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;"> —</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;">$</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">35.60</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 31, 2023, exceeds the exercise price of the option.</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 12pt 0pt;">As of December 31, 2023, 12,175 non-vested options were outstanding, with weighted average exercise price of $16.08, and average remaining contractual life of 2.29 years. The total remaining unrecognized compensation costs related to unvested stock-based arrangements were $14,867 as of December 31, 2023 and are expected to be recognized over a weighted average period of 2.29 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, 2023 and 2022:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">    </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;">2023</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;">    </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;">2022</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;"> </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;">​</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;">  </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;"> </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;">​</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;">  </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 — 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;">​</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;"> 12.21</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;">​</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;"> 5.58</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;">​</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;"> 12.21</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;">​</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;"> 5.58</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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;"> —</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;">​</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;"> —</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 — 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;">​</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;"> 8.29</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;">​</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;"> 4.32</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;">​</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;"> 8.29</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;">​</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;"> 4.32</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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;"> —</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;">​</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;"> —</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 — 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;">​</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;"> —</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;">​</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;"> —</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;">​</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;"> —</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;">​</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;"> —</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;"> 104,559</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;">​</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;"> 17,158</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;">Senior Management Long-Term Incentive Compensation</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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Board of Directors has established the long-term incentive compensation for the Company’s senior management to better align the interests of its senior management with those of its shareholders. The 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;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 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 year over a three-year period. The number of non-performance-based stock grant rights issued on January 3, 2023 and 2022 were 29,508 and 32,265, respectively. These stock grant rights vest in one-third increments over the <span style="-sec-ix-hidden:Hidden_Eww4ELl6tUGWpttiv7ldVw;"><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, 2025 and 2024, respectively. The total number of vested shares issued under prior years’ non-performance stock grant rights totaled 25,986 and 23,411 in the years ended December 31, 2023 and 2022, respectively. For the years ended December 31, 2023 and 2022, the Company recognized $366,058 and $325,270 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 year based upon the Company's three-year cumulative financial performance relative to three-year cumulative financial performance targets. The Company recognized $522,925 and $335,964 in stock-based compensation for the year ended December 31, 2023 and 2022, respectively, related to these grants.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">A total of 26,742 stock grant rights were earned as of December 31, 2023 based upon the Company’s actual financial performance relative to the cumulative financial performance targets for the three-year period ended December 31, 2023 The shares associated with these grants will be issued in 2024.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">A total of 13,797 stock grant rights were earned as of December 31, 2022 based upon the Company’s actual financial performance relative to the cumulative financial performance targets for the <span style="-sec-ix-hidden:Hidden_KsGWLXjnt0SZ5GbxGyc_qg;"><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, 2022. The shares associated with these grants were issued in 2023.</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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Non-Executive Directors’ Share Plan</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">This stock grant plan provides part of the Directors’ 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’s common stock on October 1 of the year preceding the grant. Common stock granted under this plan during the years ended December 31, 2023 and 2022 totaled 22,831 and 30,767 shares, respectively. The Company recognized stock-based compensation for these share grants of $341,394 and $369,678 for the years ended December 31, 2023 and 2022, respectively.</p> 1 1 13309 9295 3010 3665 1500000 703289 386260 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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.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 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:77.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </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;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.75%;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;">    </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;">2022</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;"> </b></p></td></tr><tr><td style="vertical-align:top;width:77.01%;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.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;"> </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;"> 5.06</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 1.64</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.01%;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.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 1.0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 1.2</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;">​</span></p></td></tr><tr><td style="vertical-align:top;width:77.01%;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.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;"> </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;"> 42.42</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 47.15</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.01%;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.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 1.60</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.35</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> 0.0506 0.0164 P1Y P1Y2M12D 0.4242 0.4715 0.0160 0.0235 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">A summary of the Company’s stock option activity for the year ended December 31, 2023 is as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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:58.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.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;">​</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;">​</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;">​</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;">​</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;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:58.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:8pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.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;">​</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;">​</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;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.83%;margin: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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.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:8pt;visibility:hidden;">​</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;">​</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;">​</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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.17%;margin: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;">​</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;">​</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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.83%;margin: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;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.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:8pt;visibility:hidden;">​</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;">​</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;">​</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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.17%;margin: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;">​</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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.86%;margin: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:58.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:8pt;visibility:hidden;">​</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;">​</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;">​</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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.17%;margin: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;">​</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;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.86%;margin: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:58.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:8pt;visibility:hidden;">​</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;">    </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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.17%;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;">    </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 (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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.86%;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 (1)</b></p></td></tr><tr><td style="vertical-align:top;width:58.32%;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;"> </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;"> 11,740</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;">​</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.14%;background:#cceeff;margin: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.59</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;"> </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;">  </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;"> </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:58.32%;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;"> </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;"> 16,319</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;">​</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:6.14%;margin: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.62</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;"> </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;">  </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;"> </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:58.32%;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;"> </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;"> (8,231)</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;">​</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.14%;background:#cceeff;margin: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.12</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;"> </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;">  </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;"> </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:58.32%;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;"> </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;"> (7,653)</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;">​</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:6.14%;border-bottom:1px 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.28</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;"> </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;">  </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;"> </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;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:top;width:58.32%;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 31, 2023</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;"> </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;"> 12,175</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;">​</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.14%;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;"> 16.08</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;"> </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.29</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  </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:7.83%;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;"> 237,705</p></td></tr><tr><td style="vertical-align:top;width:58.32%;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 31, 2023</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;"> </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;"> —</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;">​</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.14%;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;"> —</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;"> </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;"> —</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  </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:7.83%;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;"> —</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;">$</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">35.60</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 31, 2023, exceeds the exercise price of the option.</span></td></tr></table><div style="margin-top:12pt;"></div> 11740 13.59 16319 13.62 8231 12.12 7653 11.28 12175 16.08 P2Y3M14D 237705 35.60 12175 16.08 P2Y3M14D 14867 P2Y3M14D <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">    </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;">2023</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;">    </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;">2022</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;"> </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;">​</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;">  </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;"> </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;">​</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;">  </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 — 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;">​</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;"> 12.21</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;">​</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;"> 5.58</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;">​</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;"> 12.21</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;">​</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;"> 5.58</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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;"> —</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;">​</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;"> —</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 — 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;">​</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;"> 8.29</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;">​</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;"> 4.32</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;">​</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;"> 8.29</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;">​</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;"> 4.32</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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 0pt 0.05pt 0pt;">  </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;">​</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;"> —</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;">​</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;"> —</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 — 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;">​</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;"> —</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;">​</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;"> —</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;">​</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;"> —</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;">​</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;"> —</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;"> 104,559</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;">​</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;"> 17,158</p></td></tr></table> 12.21 5.58 12.21 5.58 0 0 8.29 4.32 8.29 4.32 0 0 0 0 0 0 104559 17158 P3Y 29508 32265 25986 23411 366058 P3Y P3Y 522925 335964 26742 P3Y 13797 P3Y 22831 30767 341394 369678 <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, Colorado, the Cayman Islands and The Bahamas. The plans are administered by third parties and are defined contribution plans pursuant to which the Company matches participating employees’ contributions up to certain amounts. The Company’s expense for these plans was $771,616 and $624,798 for the years ended December 31, 2023 and 2022, respectively.</p> 771616 624798 <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’ accounts that are more than <span style="-sec-ix-hidden:Hidden_IU2d0mqbB0SrcezGizQxLA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">45 days</span></span> overdue. The Company’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 a material 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_frrSDs_pxEy1ZDFL4wfZdg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">20 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’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 31, 2023 and 2022, 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’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;text-align:justify;margin:0pt 0pt 12pt 54pt;">Level 1 - Quoted prices in active markets for identical assets or liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 54pt;">Level 2 - Inputs other than Level 1 that are observable, either directly or indirectly, such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 54pt;">Level 3 - 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;">As of December 31, 2023 and 2022, the Company does not have assets and liabilities measured at fair value to present in the fair value hierarchy. </p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;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;text-align:justify;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 31, 2026 and provide for, among other things, base annual salaries in an aggregate amount of approximately $5.5 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 $16.6 million through December 31, 2024.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;padding-bottom:12pt;text-align:justify;margin:0pt;">Contingencies</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 Cayman Water retail operations under a license issued in July 1990 by the Cayman Islands government (the “1990 license”) that granted Cayman Water the exclusive right to provide potable water to customers within its licensed service area. Although the 1990 license has not been 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 2023 and 2022, the Company generated approximately 17% and 27%, respectively, of its consolidated revenue and 26% 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;">​</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 of 7.5% of the revenue that Cayman Water collects as 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 2016, the Government of the Cayman Islands passed legislation which created a new utilities regulation and competition office (“OfReg”). 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 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 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 2017. The Company began license negotiations with OfReg in July 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 consolidated 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’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’s consolidated financial condition and results of operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="text-decoration-color:#000000;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’ accounts receivable balances (which include accrued interest) due from the WSC amounted to $26.9 million and $16.3 million as of December 31, 2023 and 2022. Approximately 80% and 65% of the accounts receivable balances were delinquent as of those dates, respectively.</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, 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’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 not provided for a material allowance for credit losses for its accounts receivable from the WSC as of December 31, 2023.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">CW-Bahamas held discussions with the WSC in March 2024 during which the WSC stated that the Government intends to substantially reduce CW-Bahamas’ accounts receivable from the WSC over the course of 2024.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In a report dated October 6, 2022, Moody’s Investor Services (“Moody’s”) downgraded the Government of The Bahamas’ long-term issuer and senior unsecured ratings to B1 from Ba3. Moody’s also lowered The Bahamas’ local currency ceiling to Baa3 from Baa2 and its foreign currency ceiling to Ba1 from Baa3. Moody’s iterated these ratings in April and October 2023, noting that such ratings are “stable.”</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">If CW-Bahamas is unable to collect a sufficient portion of its delinquent accounts receivable, one or more of the following events may occur: (i) CW-Bahamas may not have sufficient liquidity to meet its obligations; (ii) the Company may be required to cease the recognition of revenue on CW-Bahamas’ water supply agreements with the WSC; and (iii) the Company may be required to provide an additional allowance for credit losses for CW-Bahamas’ accounts receivable. Any of these events could have a material adverse impact on the Company’s 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="color:#00b050;font-weight:bold;visibility:hidden;">​</span></p> 5500000 16600000 0.17 0.27 0.26 0.44 26900000 16300000 0.80 0.65 <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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company, through PERC, purchased engineering and technology support services from various companies formerly affiliated with PERC, as a minority shareholder in these companies was also a minority shareholder of PERC. On January 4, 2023, as a result of CW-Holdings' exercise of a call option in October 2022, CW-Holdings purchased the remaining 39% ownership interest in PERC. After giving effect to this purchase, CW-Holdings owns 100% of the outstanding capital stock of PERC and, consequently, transactions with the formerly affiliated companies no longer constitute related party transactions. During the year ended December 31, 2022, the Company made total purchases of services from these companies of approximately $2,695,000. These total purchases are included in the Company’s cost of revenue 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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">PERC entered into a sublease agreement with one of these formerly affiliated companies that commenced on March 14, 2021 and ended August 31, 2021. This lease was extended on a month-to-month basis subsequent to August 31, 2021. During the year ended December 31, 2022, the Company recognized approximately $97,000 of expense related to this lease. This lease expense 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;">​</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, 2022, was approximately $404,000.</p> 0.39 1 2695000 97000 404000 <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="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">Year Ended December 31, </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;">​</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;">    </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;">2023</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;">    </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;">2022</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:8pt;margin:0pt 0pt 0.05pt 0pt;">Interest paid in cash</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;">​</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,417</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="font-size:8pt;visibility:hidden;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 14,797</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:8pt;margin:0pt 0pt 0.05pt 0pt;">Income taxes paid in cash</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,920,912</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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 211,000</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;"><span style="visibility:hidden;">​</span></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;">​</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="visibility:hidden;">​</span></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;"><span style="visibility:hidden;">​</span></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;">​</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="visibility:hidden;">​</span></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;"><span style="visibility:hidden;">​</span></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;">Non-cash transactions:</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;">​</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;"> </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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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;"> </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 0pt 0.05pt 0pt;">  </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:8pt;margin:0pt 0pt 0.05pt 0pt;">Issuance of 13,309 and 9,295, respectively, shares of redeemable preferred stock for services rendered</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 323,275</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 133,197</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:8pt;margin:0pt 0pt 0.05pt 0pt;">Issuance of 68,864 and 72,597, respectively, shares of common stock for services rendered</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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,015,177</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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 877,298</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:8pt;margin:0pt 0pt 0.05pt 0pt;">Conversion (on a one-to-one basis) of 8,848 and 6,585, respectively, shares of redeemable preferred stock to common stock</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,309</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,951</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:8pt;margin:0pt 0pt 0.05pt 0pt;">Dividends declared but not paid</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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,502,506</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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,305,367</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:8pt;margin:0pt 0pt 0.05pt 0pt;">Issuance of 368,383 and 0, respectively, shares of common stock for the purchase of non-controlling interest in PERC</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,359,973</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</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:8pt;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.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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 317,853</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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 346,024</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:8pt;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.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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,093,158</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 297,723</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:8pt;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.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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 745,078</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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</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:8pt;margin:0pt 0pt 0.05pt 0pt;">Purchase of equipment through issuance of long-term debt</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="font-size:11pt;visibility:hidden;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 188,645</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;margin-bottom:12pt;visibility:hidden;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">​</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;">Year Ended December 31, </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;">​</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;">    </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;">2023</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;">    </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;">2022</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:8pt;margin:0pt 0pt 0.05pt 0pt;">Interest paid in cash</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;">​</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,417</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="font-size:8pt;visibility:hidden;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 14,797</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:8pt;margin:0pt 0pt 0.05pt 0pt;">Income taxes paid in cash</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,920,912</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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 211,000</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;"><span style="visibility:hidden;">​</span></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;">​</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="visibility:hidden;">​</span></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;"><span style="visibility:hidden;">​</span></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;">​</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="visibility:hidden;">​</span></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;"><span style="visibility:hidden;">​</span></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;">Non-cash transactions:</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;">​</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;"> </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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</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="visibility:hidden;">​</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;"> </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 0pt 0.05pt 0pt;">  </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:8pt;margin:0pt 0pt 0.05pt 0pt;">Issuance of 13,309 and 9,295, respectively, shares of redeemable preferred stock for services rendered</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 323,275</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 133,197</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:8pt;margin:0pt 0pt 0.05pt 0pt;">Issuance of 68,864 and 72,597, respectively, shares of common stock for services rendered</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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,015,177</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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 877,298</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:8pt;margin:0pt 0pt 0.05pt 0pt;">Conversion (on a one-to-one basis) of 8,848 and 6,585, respectively, shares of redeemable preferred stock to common stock</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,309</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,951</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:8pt;margin:0pt 0pt 0.05pt 0pt;">Dividends declared but not paid</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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,502,506</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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,305,367</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:8pt;margin:0pt 0pt 0.05pt 0pt;">Issuance of 368,383 and 0, respectively, shares of common stock for the purchase of non-controlling interest in PERC</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,359,973</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</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:8pt;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.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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 317,853</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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 346,024</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:8pt;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.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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,093,158</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 297,723</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:8pt;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.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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 745,078</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;">​</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:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</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:8pt;margin:0pt 0pt 0.05pt 0pt;">Purchase of equipment through issuance of long-term debt</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="font-size:11pt;visibility:hidden;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</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;">​</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;">$</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:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 188,645</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#00b050;font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> 21417 14797 4920912 211000 13309 9295 323275 133197 68864 72597 1015177 877298 8848 6585 5309 3951 1502506 1305367 5359973 0 317853 346024 7093158 297723 745078 0 0 188645 <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;">Financial Accounting Standard Update (“ASU”) 2016-13, <i style="font-style:italic;">Measurement of Credit Losses on Financial Instruments, </i>and related amendments, introduces new guidance which makes substantive changes to the accounting for credit losses. This guidance introduces the current expected credit losses (“CECL”) model which applies to financial assets subject to credit losses and measured at amortized cost, as well as certain off-balance sheet credit exposures. The CECL model requires an entity to estimate credit losses expected over the life of an exposure, considering information about historical events, current conditions, and reasonable and supportable forecasts and is generally expected to result in earlier recognition of credit losses. The Company adopted this guidance as of January 1, 2023 using the modified retrospective approach. The impact of this adoption was not material to the Company’s consolidated financial statements.  </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;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;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In November 2023, the Financial Accounting Standards Board (“FASB”) issued Accounting Standards Update ("ASU") 2023-07, <i style="font-style:italic;">Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures</i>. This ASU updates reportable segment disclosure requirements by requiring disclosures of significant reportable segment expenses that are regularly provided to the Chief Operating Decision Maker (“CODM”) and included within each reported measure of a segment's profit or loss. This ASU also requires disclosure of the title and position of the individual identified as the CODM and an explanation of how the CODM uses the reported measures of a segment’s profit or loss in assessing segment performance and deciding how to allocate resources. The ASU is effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. Early adoption is permitted. The Company is currently evaluating the impact of this guidance.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In December 2023, the FASB issued ASU 2023-09, <i style="font-style:italic;">Income Taxes (Topic 740): Improvements to Income Tax Disclosures</i>. The ASU requires disaggregated information about a reporting entity’s effective tax rate reconciliation as well as additional information on income taxes paid. The ASU is effective on a prospective basis for annual periods beginning after December 15, 2024. Early adoption is permitted. The Company is currently evaluating the impact of this guidance.</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;">23. Subsequent events</b></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 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> false false false false

MEBF%75(ZBM@#G*KX MUJ0[]@Q61HA]@ *%, J!8/R\4<#_?H"]?[#!#X*K]QI6<6/ MRIE=.-2SYRA%@>7J03 X/A:[M0)9C55//G[3WT^LM9^[O!T1W5#,E=& M:W8?G&(0B(3/LV>@/*]T*=69XP(/6\LROVZ'GHVJDBB%PP75EE]-0:]>X,0A MAHT*WC9A5!+L.>M5YR,XSA:8QDB(NL!*N5[@P1&.QT7&)G'$];8SQI;&&[TX MCSKMM1^_^R*;E,66QN/-R%ZO1]Z"*^JLAS MV=.=]-Y]O9O\1F!:/K/FD[+)V$3D-G4C4VH: MA_"+G.'KP4I/?]CH3O+U'5]55WG+'H+:QXL>#<'TVHZR"O1OIP\/GY1,KSW7 M,ROMVU+9[EOVI (_/8&C&^$W)0J]TQ=[>^[PS=%T/(QY8$L>QV3?G*Q2^)_9 M?$/_]&#'&R*'=?B3_0/\*T4_Y[1HUN;"Q;WT@H;CQ:8&7J\,W7'253A2?7_/%[919X3A3J_TZ?[<(4W]EW>O!W?ZXB_TKG M]>/?J^YF7%DH1WCL;WPFG\\LE]_%"X%<;B27WP0_@5QNA9?G(V) +H#'@%P MC^5>+H#'"R7<@$\ED^Y ![+J5P C^52+LA7 M' CF>H+Y?<7&24)_MNERLT6@7[ (^:[7H!]O%*IZ=DS&2S,=5<_))OS?+PC^ MY943)?&O]-/,L7>MY'KY0OQG]NB>\8$09IZCI;]D@\,Z><9Y3L_A0[;Q_9]_ MS5[4<@7 XZ[A@;X6'<<7T\>!QR'?Z['ZYS>AF/X-#!XF2/\R61IHP9D69"EI M0 <^MPZ4X67S1+_BY$=2AJ$7*LY+C>.S;+V<]0MA535] MEC H^*E#8&VR1$FHX.HAZ$/XH7M:O6%=5;Z:_ER]DHH-Y([QAG4E]M:1Z#*B M=\4U6>H&S?)RF11?G2%^@G/_!YK;>LA%OI_>]E(A5K$VF^_T78U/9G1]V>>T MI2F9,B9C6<$#0V 0@U+/E&&!WDF &P WO DW/*B$P>Z&S7!'RWS'+$[4A &+-&' ;!F/3X8&'U%,RS>K;,H+ MS+YB&Z,A"D4 +0!: +1P;5KX9;6I0@BJ/Q W%+S^D"!: MB=]%(K'6M1L++:G V (P!#/AI4_.T7T:V'# MX@)E*PK*HKIPM 4S$E_=@N*%\,9'2MC&)YX$+^L-?MUFG#95W<,[:XU*03!. M0@B-OM7A+;=/(ZBYFW0E/#^!"NIA5?9="-*Y%8\_WT.N0&YYZNY)Z>8]^W)M MHUPOU)E=_ML/^?W(A4?XD53Q@^!3HI@ M()(X[^M\#[M] . X!\B7ODJ7&]J,.&[3E"R28GF150TMY5%AFORRW<<@C$* M(NDK^AP UP#7;X'K3%0("OJ8 KW,EU[FZ'USY:#7J]X^'G^ M61RW MTF>:/P#F+RCG^H@X?YO(U:LP&J.F%GI$2^$';:)K M,Z4&L6!Z\N',802&4(J&:/0YW^_^D_RR\YFS>164(-!#<,8P"+E_D$VYM[:; M&<5MB9S! K #8(>/&E_Z.Y[HU_NX']56 MB"TD3CLR-^-:DV-3GCCF5I$X1!+G;?P!40"B +E5-\BM>AW*.\QZ IO,>LP7 M#;0";Z55S19,^73Z-(-@$(5^H RKKN^MTL=+H,+*48[I5?HZLE89-;]M%>IG M9*N[IR:P(7;;8M(3/KL9.EE7XT_83%GL GVIK#=8)(NM(!89IF)*.XHJVZ9, M[G.L*(AD* AGKE@Y!C .,/[!,'ZUHM 70EN"I[&WH#9]T9K9%Y4;C,,B-!M@&V,Y9+/&%*">]JKQ83+@2/("W%:PVK9M3+$/Y(8A(D C$ MT. E#H .LM7>,A;X0I2._6ZK6&^3.[[(3[M\(XS(^;27H93X\IU(;6V4@0B< M^.CY:D'H1P?I6FYAY7NFGS(M2%P#^QE@X_-NXHC[?-V'6*ZYW2.2+Q#?KM0; M;&O%=55L#+H.C]=IDO59F@<&6WO40WYQY9;()GLIJM7$'&Y:NVVR)1/ZF:<6FY98(E$((IY+FD%L )@ M!9":]C[%DW\,Z06R:JB2: QARX[M02LTG(V0.6-9% J#*)B 2/JY=I]WEHI6 M/;I@]XYW-T"'4* 7@*]!'H)]#(?1EE>,GU^&B[[^H*@K8?\ M5G6B;/T%S]-BRW$NV'=(S6WV)8/KB!'I=9EQHM*J8,ITEO�C")0S@.^J8! ME .4YR0B\Y=X'\W)&'=1C8$[UD@4-0FKK(MLBOHK0Q$+EZNXK(PYSM"G&%U7P9((S1$/YNG=_\)0*?5 0D_($H,]H[N M)N'G1'S/D-LX@KO4UAIJO.7!LCHF9W.AQ,I,EN6#0 @%0P0"CI$"/ !XX'Z+ M"Y^!_[;86"8MTE!%U$YHIMUW>[MJ!O_L=$F(P5/3AGHNMQG '\ ?P#__8:Q6^P',AV*TK7KE]JK3F.[,E P.-8D,34 H\ < &X#LL7R$-)^!XKV90OE1I2]6FE;\_6L,7KVV0\I/5VG941 M.(M"D@1$$QA$7;/8$* ;H/N#H?LZYT&^ -1>6"YC^"S@1 L92RLN6#8ZPUX& M:O++=X*$$(2&4/R*39(!J &H/QBHKQ(C?"FPA:#J1;5)L9(Z%BC5;#F"XL5[ M8#-?OF,DA"$,!%.@<1$ -@!V3B)_+X4X/]GTQR)9UT6KU..XDHYU3&9OD._C M@!@$$SC$4%<,! *,WR'&08KB7U6#O@"@]FSJ('AQM1+7;&-23,UZ5V@< )I% M]R@$PG 2@M^Z)#1G<>G#@A4\HZ!9@7I:MX)W6CC0H.QC[TO\WW\@)/PFM6YY MW*K,A=3!IAQ0?J#\^9$Z4'Z@_$#Y@?(#Y0?*_RF5'^0BY2UV<.C/13;4CK,:*5(PMZ/T9A'FXM%L: -!AH,- AX$. QT&.@QT&.CP7>DP MR"?(D4]^P'"LSA!^4*M%PV!*YS9#-'F2?0,!@$ R3$(T_EW2_][/_ M%2HS1_^^'W9T\)7#N#>7SB(*0LM('BK$$W"IGN/YW_X!PS.8@(_CB@:Q(F#[V?>H7)_>IDQ&MXV.-U0:?#:&[C]-A\ MJB\#=:YKD:-WC./#57QOR6]#W7<5ATLGX:5W#M@P]*U9%.K:T*MXOI[.D/,B M-_U2#TJ)\./Q65]7AND#EAQ/M8^J-Y-7-*S1E+':P%&X,XAA!VO$5?, BWUX MB V?&2=GPY O!3U5Z57ZY*$?Z6_':*FZS/6,!+ZEJ']$<4]5[>=?PG^N5WNL MG*XP\WQ-]XNISCK**M"_G3X\?"@RO?;Q@9;*MK@7N'MZK**C&^$W)0J]TQ=[ M_CI\/_Z]JMUS9:$<67=_XS/Y?&ZY/&^; ;G< M2"Z_LS:!8 "1 ;D (LN]7'X3]0%R^2NY_'YW^22@/[*-;[8&] O6X",%X/YJ M!5(?+?OROU^(+Z]<#93X2A#__/?1^3O%)E;;0HH02RO\ ][_[YK+13\.3:BI M0ZG[SZ_?[-$]XP-KS#Q'2W\YT16_H+N:KA7*NKJO6CL$L#$$.D6R9R_*S@#X M>5_\T'^T'W'^[V5DH*]%!H)^Q8)P K]LSULZLZLD&_[5K8"/&SN7-@7'I2K2%]<,9A?K<7WE3U># M>B66L:P-%XY %$I#& Z#[I^ CY$I TD1J)+M$G?$*I0Y5 MNXE6E>&K^_\^PP!.+5B.=6(BV=( 7M0%S>K#TXP!R"_?,1C"*"+K ?Q&N?>W M=^V&<[U04N;*4GD[.^8S,M;'R);[!.E&;V.3E ;RTJNRE1AE%W9D*I6J+8X1 M?GH-FZ19B4N#R7:*V]RNM6'[ZK8R6;(RGMDD& *A6440!KH( CCG+_GU3NR+ M%,UV:4L0Y++N\JC&NCB[$2VL\NKCQIY!,S:9+%BT0O9@M(-@[FJT[@A+"!X\K$]I[6\[)^4!M#BWW;5)KT2.[C:5 3TL-=17%U<\PP-2I8S5Z_T!#.ME M;X9%E8TRQ3,>R.(H&(1A-(23SYVJ=E]QE">5#(;O+0OI-15S+Y%"<&Q;75!, M7S]\%5OAO-#ABJ51#;AJ?T-TM]LI?7_SY\9SS14'OLX6&@GR,.ACVU*CI\*# M5E@L"WA#616OP8&M&:INFHL$LP=AB9GQM:W3D9B&4] M3JD@-8=PG(08^.]LH0L9@SGS $ 3N[SY@X\I!$LI1/.BK#PS#W1YW;2;FT\] M5_3YIY72;\Z*O>XBD%@IZ8B=0=N-I[% PQ0K4_M@$0UG)^U"Z#7WM@ Y?%YR M^%4@Z>8SSQ4W/#6M>'58AYNLX\#DP)]+TA:-V_XUMKVMT4J()W9_;J/C91?S M1\1@G:+Q/&4?P$X!\J2U)/Z\K^SZ/RN1^0+/Y8PCWN'LSJ6+:'[B%H MZL5#=9YBI#?^ICBQD@0G4YCY^L,O_/8#NMDR%%("P(A_%AY\SI;C;"VSKA,/ M5NQ15XGCGSUN+''Z\C=5@D?!9(T:T/1EM'K4>P-'OE+$E43UA%BQGX+YCU*8 M^QD)_&/8X2Z6_62?4V5,T>W\^V&N__&K+]^'^_X>GE'(#O')3OCZH(G0>CX,4[*1Q-.1':XYEI:NT+&C@2-.UXV.L A-&9/AIR/) M99?M,LIB;G/>IJMV(FHT6+/IR+.[+_M28,'4MFPKJ04UJC7',VS12T>>W7W% M+:V1/6NM1 L;5'I$PY6'499V<'9WKX1WIY2X6HF*/1W+$X]M%&>F3)R/+);Z M6'/=W$6P,N\$EF!I.]CMI2//GK.W&?>P-E[I\$N.F+C^<#=F>#8=>?:<_3+1 MT;H[HVUS&TJRIJZ.>%$6,CN[^[8OB7MAP,6F/(]='F*9D7I(F6U7K.)R^H M4]NC-E-6NR6VQ(G2A&Y76D*\Z]7C?3NCU-[_U5\]VP3I1HVJCML[6:LJ]=02 MZF>+JH_:XPC[2M^RW0%H<@1Z@]R37$!OD%S*!?0&R:=< (_E5"Z QW(I%\!C MUY3+2W=UFQP! ($.-W<*#=#E".C 7W8Y M.K!?SK(1+@4]P[E>D 8<2,#XT-4ZH.')C9+48]63I?2W/NMJ SW6?<74.<]? M>8>KMO9VEXS3_?E@A8^;ML 8@NMP41.QKY&?U9SH6IGG/ ?6K=4B@2T67TKL MH1W2>[0>R!DL #L =KAEWOH?L@,^IOMPI6/!TD0<==5^K)>2:Y3Z:DI(+9D& MO18%=V62IB:6N\BQ5=+;MS*XO8/8U?W,3$P7/4MP2>6Z-U:5K)F!_PZFTF=D MO@]4L),K8OM#7EM%OBX;TY1G*@(&B\5A4ZI'TXZN:F8NS1[T#X@MN]DWW@U3 M]94L33_Q6RO+YCB=[_43Z3]HKXC^X+V8'I5VWH:>VTFR<5K^&3 AU MQG?_! P &.#3,<"-3)OW80"OJ2VWK6E1%@6?B#!54]!MP!Z:.&'G.>G_?(G) MLTP!Y>AW%QCR7/W4Y2#]?W/?XN"4&P?\0> / G_P.M&BCJN?..M(DG2]B\WZ M<3"P(UH#98ED30F.*SP7MUGKQ$-&N,)O0VZ7IL7)$EL['@= MG2W-0\,G!(%HF( HXK?U>B\VC>XL(/0N9M)G9$'@)]ZGG_A.)L_[^(7P.E 2 MDPT9<;TV]&BS8N)UK7=H^(2=-W@!D2& ^,^'^'_SZ%W?6Z582Z#"RE%2*RI5RX*^ MCJQ5ID90P=7#PBPY%FF:/[0J-CC99GWYQW8"HVY&'2Y=A*G^JVG M*KA*+Q_ZD?YV3/>S\4#*!(^H[]=YL?"?*\3'+8A%0$%L[@ICOC(H*(S)HUQ@ M!L@EAW(!A63YE,M7!A1>YE(N"!!+#L4":.R:323G17EW1_D(6((95._:6O@?KQJ8YJNC$?*2[*C*V_MXP[E>*"ES9:F\G4'SV6CK^;TLD("48UKZ4^.D-)#]=:5$3]OZ M&$8989.XC6J_,7MU*<4+:4F@J/Y\'I*&.)@%L3AOSLJF>"PS16$(QA@(OJ9Q M\MD@_>RV#D!TCA']IX9&BN@NW38,0U )7G&Z6$]'MY2,O9>AX=NFBSNR-Q2Y MAJSV&3Y&VMUCV2B*IHA&())YKF#J_N,IF;QUK;"7%0BG7#^<) MB5$]\:BIMD=?KJR6S 2A:^O&7LA2:)]C@]V6[G)#Q8;!PVG M9-UFCU6E63@&A@CT2BW'0$CFF9#,K;$$F"0O3/*GYE;*)$,\55:+L.R*7)>YE;MA4H8; *(5,&P1\?*6J1<'P>,X\'HV)[BL$X':^;B@;X:*YBA:A,],4&3RA+O6D2[ M>O% WW*1AXEZ>:K8Z(AS-DHL-WD]OG2@;USA!MO=1D7L@=NS>4PB=;Y\\4!? MV:RCKET-(E[BD>E.47"[N6 O'KY;7,=AJZ&%<#+66$WK2[/9(#NF]WQ&]8E5 MKFKU*A\9YG0\9$K&3,^.9SY[3H1;=DOSP*/%]6S:J@]&4K4D73R>>9=@*JX/ M8M+6M:H$D[-*==B[>)1R$*+;;DB/##M1\(G4&R2KBMB3J0O79 ?QFA\++(_" M-CZL;US+EUF9OG X=,CLYA&OPF(D+9%$9K9M>LO*S/E(0RAKOC!F;#XJT^DH M3&=P-)4[?#YTML"X5"FF-*P+W%!=L3R+K%D90RH6>"XL-9O+*Z20CK)F6O%HRC"LX+N.W8FII%/28HO(5H ^ M?]:Y$ VI/M==BR35JM?+]63.^&8V].Q9=XPI:_&"G<$1C*UP$:O@[BJ=U@5U MX1/3I&*A1,,-O\TYZUH5G4IL^MX^'VH95*1$0D*(2=!@6].AE.A1.O2"NK2, ME1RM1UW,+E8IK+SLT_/MM">C%]2E/FA6_(98:]A+<;Q$63S6I^EBH1>H@NV3 M+7LND+*MQW7#ZMF[ H%8$ON#*XE MR]:&;^CE9:=,]7=QDE[U K+[0JL;XC-"$M"W;1 M7KK3B97$M7Z\-]^>#L7;"\3\=N5[@9Z<-X*(AXI-HV4RC.>G&T& MXKH2]:*=>:56$&=IW8\,"(3X6LAFE+4[.W4XR_INF(=)[3\KCZ95T(_SNFJS MC576&Y.9LVR7BVL7C@;;4!AC/&CG[%R8\$%7" /3C _B^;=^S9 M,&^YT\_-]VD8.SN]P]I_]>U-H9"W-;E%MB1(J_])&/EJ"9"'A0$P 3#)=^., MMUN7NW,R!M$LV^W+D@P]?[^_ZX5SW2^L?&^AJV'ZV@S"MZGCS)4S_DF.L7F3 M!.+?;5A\@ 3AWV4G'#-]9FN.D^?U?YYFLTC3+&NULD0 MU3T *C-+@^,9-_"2Q>+^KB**@F>O@J2-]6I3JR-6@OXGB.L+HABHVQJ*LJCVBN^/C0U\*A()HG((0%'_#2LD\ M1@OXYOOS" Z0>\A ^)C>ME6-HQC<^@,(]36 M2!#IJS&@L45)M=QP6K TV%B3P8Z>;13ST'0"H2$&(R 8>8X! 4L EKBSJ,:= MF4Z72 *MNFM8\,W45>J6K7A7YGAB\NI&-;\CB>6$;J&^T55YU/)#6!N7*T$_ M/IYPCD,P1D((0KVUF713F\A)[5+?4E/L S_O3OV\MS9U/A5E_9U=4XETIV,Y MIT/*Z0[A$>MUS'/-MJV1(ZUGK%Y=5/X[LB+K,47HLB[;')1H09!N5&1A)9R :&4D3\=$$G2L'J,XA4WM5=W_?P=:57&I88LU8I- M>+UM6XB'M#>6$LOTOLTG1&8'TS$T"-T L(/0S5\;*.=8)W=MNRBN!B,1U=NK M=7%E6TGG:A&! M#(![!MPS$,1YI^VIFANDU_O)?' SY"8#QA[!:ZHWJ4UT3G+F5V,^F]VME7D\ M=?G&&I8\34APR^W)S/&<%P:%Z&NF&^<,&8 @0/PF1^;197Y0:918SYHRW^C5 M&J1BEB9&?#5^&(IZO;S&)@E/[KB!:JEV9VZ8*3_L3V^A:!)"B>>\H+N+W/Q8 M;N#)?7I/#H1M7LA5?2]1G-#23YF!ZJP--]=AG;0' ;\R%&7AEG=7VXM:-D0# MF2?KHIT^61# @TTCRIJ-PP=C!L[<..:YS$ ]$\*=!"R^3N<1Q0R0$;UGLY' M"[(ZX.;KLLU=#>=;HC.J$+#5M?5I>=%J4$._W=L?59#M)Z5&"0IAV$[L-3W9\ M6REC<0*35]NH\I,W[R*9/[[[Z_2=/?:.9_P ML&EA'J>>*WK]TV,8K^0WKEA,EZCU""9ESW9"Q%U.^VQVVFX67T)H"*5Q"$&O MF L-*.+S4L2OHD\WGWFN&.*I <:KPSK<9!T')@?^7)*V:-SVKV8\*9Y-V^W". -]I$Q#4[VSK/+^^Z4R__4+/O+EGP2B?/?$8\WOVFT^VCL#??8\[;V3%'"Y)U-?:1_7A, M&KJP*]4H5Q:H%LX:]M(J6_W$;29@'ZN0M(WWSO. MVX$P+T=^B<<2AFG1"9PT.NV=V1.U%6UFR,\J'1 (A1F(Q/XNFR__%:)=WS/T M($@GECK>A@Y*0X';<<\>]9U91-=MZ_5R3NS.I_-)LXUN>&XRCQHQ72EMIJDU M=.ST!2/I?PSH] 4XXP.%*N[,E+INIZ^74\:4Z8BZLL$8/EEA]143(]L8-C/* M./39(&$(I=[\8)M;P@$T_[IW'Q T_[J9Q?/0WP@J^HG%FMI:8^NJP=J*A6B. M.W 8U'O',-#"[G5',S$:\IWF:&8HTK3J2;UT@H?V& R,030!SN ## !"07]I MO_R" &C*-'2DT1S!B:2TX'XM]IW!.T:#EFS"RFT;7_!D;X*Q7*MDJW&<$0!Y M: M(023ZT8-!91F5D_(XV$[?1YF1=E11;4K5.XMJ5XD@P M973?4HRA88@BKM@Y(V?( 00"0D5Y,[5^PQ\;%YLB-J5AO%"V5MIVT)([Q#N: M7&$7*V'AMKP3U_1*F8Z7>HE@>QE_I"87PV3-QIX+-=]=W*AC&):J%_Q4<,!O MO%._\5,6>]Z9V73 63\=>"2Z+M8.IPRN&39*"S/;B^K28O6.AM)N%:Q',]:M MP>LICYAV?=GNTJR,[IN,T30*D30(+0&* #&H]S*,SAA"L5S14>)!@Y,NAW,L8(C6%* :#,/K->Z[FS'-@EU[Z MQ+N]X J>4;#<5$=,*VO6H@2!_H;)UCF;./ <0>@I=S;40S1VC-H/+/YH7M_K M:FBIU=G9TE#M1I$S3MKE=R1,9>6L.K/26K"E12441/?_L_>>S:DK6;CP]_LK M5/O.U#U3!1X%XC[SGBJ"R#D:OE!":D HHD#Z]6]W*R""XS8&VYJJVJUGQ5Y=R$=I")BXW5@\&8N0Z>?N]@@1)$20,/9T31/K)0 1H]U]D\R312FJ M:>U\DNT_FL8G!I^:A=EFG4L_4E*SFZQSZ6BC8W0Q@*#;G*%/EDQ^LQL+U\"T M-(,P@(PW)3R\%CJ880SJ>H7=CKAU/&ES84]+KWO%E+3FR%RMTIH.Z08#-I\8 MBE*Y+1_M9W-1LEJURO&]TC#&V\R$CF&[B8E%TL_6:H9($2)%&(KZV'+NRT Q MKW625G8S[O>[I>I4%NI95J8_$RA&UC36WF]GTF[;'C5'77N<6F"@0*WNX[$( M]?$W.M^9/Y&U35$%I@EIO@:RIBMP-\-"J)_A2][,QOKI7N>?F5V>R.8/$GM2 M]+#HZV+^D:IGR94\%NCT\)%1!N_N>?V.P%4^FIAV,F*J+S:7-8WI%*QX;C.A MXT[@*A4AKYD+#*4L!)LPPO4QEMO+6-/IU;6BDJLO^U593K8:Q>Z,%#_1AFN3 M]876[ ['_41LTZVD5+XSXC#6(!LN'8\D$M_J)L>6H2'I@8P"B4KP!A!$BY U M\R/-M1^&$S_1A0V#76]%0D[(@ZF'?IZAM:W/YJD**;'#\;RS84;ZNK7_Q SA M=C#EE=*J.6(YHVZ#_MKWAG MUG%.4W3; @9AVKHNB\",$*8VLS:< 0A9Y,-H3.@@A=&8N[0+/,GMNH+;=<6V MYDJM=\$]V:[ITD9)]!-VKS%,,<5DIOZ);M)HS%N/46,38VE%-N(MOBID>.@F M)?$=T*EDA'FV"UR(."'BA"&9NPC)O!)P4KM-4: *F3@)MJ5B8<\,J.IG=IY< M4Z7Q0-LF 0GFPV$MW>]REHX!!\5E:#K"4-\J+I/E5(G@%W!$&(@)/:PP$'/% M0(PJY1PY3U5Z8&'V[S8_HM%3C,\(GVE:=Q\;09(K,M-]-U48325+C MR4)[0N/VVDR,BM")*]9I_S!Y^8D8<8=1F+LVDKUY0QK+T%O1K;VCTLE@R "6D.Q-!FAF>0WKS3* ]V Y,0[ M%SJ6W]JQ#(^YW9/!%!0\+VD_,$:E@K!9]G=KN329/*:ZP^PGYJT>JR72>*S4 MHA(W;_2BA7F;FR'G$+?@IB 6>>H33:C'_+;1*8EIFZ4M=C]]E)EUGIHCS$ ]N!-,)$G%_LB$NJ=+ MEYO6 ABAB_@GZ':[&W(_WSZZ\;O>%?#]85\E)'@Y7%67!VO1OX%@O.=6A4X] M4217@W$9#*HZ66E_(OK-U5RAWJ[-6E)BNYR!/=C:TU9FPI#.I25T(A6))\(& M2R&$O--:"A'DP_HN/8$@0LHV=Z44E6>Y(J796C0A3*U/]+EV8&'JP_IN0=+Z M@&);0)N+$XP@^ Z3-).*I)Y%D.\0A+H%E(0NYW,NYS'R,!!Y!,U&#;'N 64_ M\ K=>WSUNT+=4[NM4QH-6"%FM5E0!"G+7DBQU.-GWODD-V.2;DHL2\]FY=Y. M'[%BHXV6ARRN6"09IR/,-4VN$#-^+F8\%<*Z^9O?%62<&FHLWZN0M8PLDXFN ML1@.M_2F87RBDR:7;7(B<.NTE.#G?6N^6:Y2F3E:'KI?A8J0293H>S%*]5^+ M@UMZA1U;VJ8ESG9!)CF1:UZ3->,W9*8I&2>#,_E,[_L(-/SHM3#@O&_#5N * M^?/?;_ZB[W^UFR_]P_9($-?__ _^XS]&!IR!D&IQ,BN#UN3A%/GOJV +\K. MX1&!CGE ZT-+(A58-?[W_P07?X#.J$\NC(^!MUH !&"_:0R5EY,ND'/QKPVX=81 8" C43_S<1^!F1XXR6"K>-!BCF(G-4!C/K MM_LU[S.,JOZ'FBDBA/CM-#1; S3[T;QX8RQ-_TU#HP$Q /S5?;$8]9",7VFK M3A0@<]B8_W'$PD!@_7][S=P)YSJ3H)^A^$,4EIUI-\YZW8]^_=-#\(?:X^80 M]JNH*Z[+I]QK>/68U)FD[6ZB7%)9;\BFU24&VA*SG[*3M'KPM4?*/)96'NZIMX" M$&AG.'5'+#B3L.#O,TV6M0V45;@(H2&0F^(^.J!K)C(3B]TP_Q/A,#X3AS! M4M0$?%3<1AWU^+N$_S.9,(V6MEE,%U*TRN1 >[>B\W;[5!G_^9:\C(Y&70;^I8HR?J0HN(P)+7D!D_I\@F>9YX%HPM_AGA"B"O%; M%&Q.=M=J'A:+GFDM1!-+4P0]94>@N;@-]!;0ROPW.%VMJ.(U*9","_3W"A2E M@,#"OXD&(4!PQ?3"S\.FD?M(@)](_(5^0B]$DW_/#4ZU\%?P!]3?_\$YD<9@M]XY@6$8+@' M[,J&[-?0+)##U$6=/3KHI0[KP/0X]3:Q\1*;CS8ZL,T%N:L72HHVZ2_;R?FO M?S05G/F8F.7"+7C+%N0P"S]#_VF37*=-;1OI4K'3RSQ!?VC4B"84 M7"@*T-)'GT%E9&'9L:"6N"AX$ *Q; (A&BC8'2% M4 1Q!+X\)!V2T*<1$RZ!(P1HB$)GR4+3H.=PD S0)2(L@T-."?P2NM3K-9+N MX>A,-$SK-6IV/J&SV_9\R+(@)H@K4:G+J=9-U*P)UD!U\JH"=/Y.-*[[\DUH M5$":.L-$10&""!E;WB&Z\D!PE8RO8BYM*MY1#\'A=GE;B#0 M-FUJ0;R'ORH!W%\4"P2 UZT_K,X;S<$7L^_5(*-/G0 M>_A4P*N"JO85?,1;BYVH]Y:&-!QU1T9Q46B(P\PM^(@A7V*BH+[=+$1(-]&Q M =+D_TS[V)+&CT\^($=>AAON.??8N45^/UK8A4*V7_]8"_A46_\'/F?G6KVG MG E-#@!=%P%9) :8BR8!I)CN&K#[@N^#T76A&R M&<"[;^?(A'IZ$2[F^D:N:XD2@FVX N[LL&-Y(P)"/PZ*O^(C T-%"*3_L*V( M8M-P]1;4'\+/4L'/!]CQW&73M(&0QY1M0;'37(/'^;R@&5U@H"J*RQIXD00S MJKG>#_J[:JS%U))T=[Z"&_']7?@J0*2/]Z!97[-T;'6JB$I M)96FXEPS:RF;F^Y 9L22M49)K?=7A>P8&/*BEU;A#J0C=/J\HT0$RJFI0\\< MZA%Y%\'[<<%<.=-VKHK<0'SRI1/J!>QZ::XB#_'!GS_W02! M\=R%342,A>3NL(F14P?97R&$8PX'UD1>U)$F=;W^9R,/D8NFLJ=&,,,_$#UL MKB%;%ZH/1S.CB5UB(%/KR#IQM3:*X2**H#HP8'G&LOJ\JH]]KJH_5=(9544B MARGE^$%$'4 ]JC(+R3L#)';PJR+[5=;05/\)?[' MV5?K:.:G#4$SL='#590:X_8AGWW5T-['W'^;0,WW +A)Z&=:472O"G\@9[P!28SYTN0S1<%\4L: ^S;'ED=V=Y90PJ_OOF41;;!9 M5AT[H&AHYF6M3UI<8B>W1PDR,68*"[U2 F5V WV?BR?W;FQVW7!_FWEEI>;M M05>*-M5AU&RMRF8C<__[VUH(?&PB*"O6+C-T6QW+%:F,]S>1>,FJ^TCCZ\U6 MS8P3#6+-R?8A-.]J;YP\P,H*SJ-@Y]2%64]/.HAG8UW.$5F9XZ5HEX?:T8^S M19%NQZI>$X#L: K;=)4=-.EMQ05*Z,8ZQ@T.[V&O= ID;?- H.HA'OUQK:&$ MM"Q:HFL2.5E/N"8(JY9F( 0_'O2*^)NCO('W#(CR2E"'!U3VI:=!0G!85@UT M_,]$OGI0KZ'G.Y%*SCJ;THE>><_%X2C-MDPDUKY1X9FT-"@J,R!:-K(L ;PUSO,,T92B,P.9*ZB L1' MH4^/TG:(JXWU5:R-C#EISB;Q"16;H&>_39-@I>1\YK\36CR:R54E+;5=U>9- M)4OFEM8:ZEN%-N=_8"H$5&".TT5HA#EN?\JEBM$9OT(&2.$E&2/*",?!\WA"'1AP.R1R[9UAL176VNPDG-XXH8]S(I]#X!Y8P3X'#'\-:Z!3^Z6^ 4@?3E95LX ME-BXM'NZ/LBG^ LQ@&.1_7/9F'3+FQO :LYZ MW/:BU#.&VJUDH\NA-&0G\58FVG6KP3^ :NE< M=I"8)AN3/CTU1_TIE1^(_0QJOYN(T!=N*?&8^LT^]:4HJVBZ4N78I7.GN-T) MP!Z5M_NWOWDHA_) 6-Z1/!XE=PXI'5SBIJ(RGH?+%=]?K+HX'587A]7%[ZDN M#E"(HG"8SJ\W[O$3/=_9F\O2#$@YMA[;R@4[TUO,$7RY%#(V.E((1T=;T?C?I+--3A!M@"(YJ;S"3TA3T=6A=PRMEG, MXZ0MM-+R;&9E!JA/)3K0=CRREJ<;E14GCLE$+KG?;KMB?VFCD?'3D1,5] TK M+M2EZ**J6@-3'8ED9L*N92>Q\G=NM5)I']]L*V^VG6U4P']>9.!IYMLZ6EISQNU:G M3*Z:U-+@^F1[5&M#<_WLZ;L=F5SEXJL.&2TV)H55FY'+QF82/W\Z+TI&K* ] M=LAN2:IF*49*5:0,''G\] F@A32()>'G7#H^B7$D-^&F*6:2GJ5B,3X12_', MV7J+&7DOV1,JRG9S6VJ\5ME8XR6ETI;IH; NR.L-''DV9T&B^=ZHPM=83EB027M18F2F#7?U M;,[Y;M]8;Z-2LY_;"?'.8S0+ELTY''DV9WI+6T.USHREH9T;]]GLLA++HI'I MLUV5FI9.QGL=4E'*P]FNN5:F_!SNZMG306U:%SN9$SU5*W#4>> M/5UIY6<#GLE3D/L>$^U4=YI[;*.19T\?T+5&*E]:]/O#[B@O5O<-)\W7FK'F]5+.CF3XM3B$&Q.28"CDD>3YG49HV M.78S%Z5<)IXED_(FG>QO)JGSD14Q6[/ZNXS.YHKZ4$FV,KE]+C-)GX],I450 MKG$KG06%,ABSPZ&ZBT+,(\^'UH7J2MQIJT)?*=F/!C74%O'Q!@T]Y]!')5GN MVO2(%./#IB#.:Z VQ[.FSA9@]X>=M=476*[5S:1*3&72B,[1T#/J]SJ=7$NM MM^M2CJ&BP\HNNBL)<"AU@50@)Z[,.3WU M6)#LXJQ9J8_*V56JC8:>O5:FPI/RNID82ERJ/,TM+-O*2WC6,RPQ-S%N,EQ+ M0+)3G0P$:)HM+4MD6&9G1ML?-]NF9W0P 7>DXH55F9Z4FOEI"*DRHST=E&7U4SEU3I-%E:IO.[Z( $N4TL M'U6+PWSJHMH;JYGM8X^"@)?;E>*-DCAIY6D$>V?KS,?7J75%7#!LLG]8MP,FF59H-IODM+NTXV6BZ.E?)V<5E$]:Z9;RL: MF26+16U<5OMC^K'11L[DV5 *C/II>KSI2%6VQ@S2U(HN=N=HZ-GKD^M%T\I4 M2Y-^45?UCMB9=\@,'GKV_H]9:!%0+9#H*[E!EYDVXM&X H=>8*C<4N7Y"EM, MLYRRHA6A7'I@BNF<^KKVX<,NOP""+8/F['+&,)@<'7C9E. /:OG%J34 M;"1[*ZCIQ^58^TJG"V]RY-M)YWFA *=LRW-^\#QT?$G1ZY\H*>#.^8\5&(9WL(\)]2APRM;-B4?2.JY7F\! MIS@POP;GG$'&]:CF_1Y%'2U^.X$/= CCQ8"#NQGXP=Y0;FIJLFV!SP@T/-WO MY/B4_9N.U+O__E$_$/J!"??E#O;G/?:$> MDG2X+U?;E[=VSGS)#+L9$5)O(,)5#9X_ID#JN8S@99),CYX9+,'RVO&>__N_ M_TX_@AP.;MZP2>\'DPNYJ1]$FI=4_8>\>L@7G\87] >1YB65=F^O?HDOWG1G MA:,T[JQI*.J239Q7X'Z8AKBSU_VPKNRN8'^3.VQTVP"3V=C@YH4B0_:CO=JP M8H^;@!?F'UT(%_N,PQ0%3C102!0$PJ&(TPN0T2PRC*,=&__HD_D%?I)^SHR#N3E7\?Z\-09#Y&9-Y>!7GW M(E--1D=I4AH.V"A5F[ %# MH7QP&=33R>Z@N!#[J]P4Y OU&C7>;)SZ#()Z(,]+F>_?90VY]77<^EI=>3_< MNNJ@TQ!\U9!H>I%;\!9%]\'&*/R@<_D3[D"2]O,]FBR5F:YQEPI&:P]+<]0Y2/4UC'Z(4:'[G,H-3_$ M?7Z]U&S;T=J*:>M F*_L%EU]'JRYQZHB"4?J/..'J$'?;<>-.X2#E3!Z4$1 M.L]W[HZ$>OXW=B?>- MKHZ[Q0&/(-\&#WAD4*\(U)#H\J&.97K-6OEM.=&O-NM9VN KW*1VJT,=&=16 M5 ETJKS8.\IO^^:^V?GIG.94TQNL0X MW)=[VY?$0S*LP;_#?0GEY5[W!=U"'N[+O>U+XH$*Y>4.]R7$L?OWT4(O\-#O]5L#ZC?F&UV3TX?_WB_[U;HREKJN*[]L2^=;< M\3-LTXS3RSDT34/3-#1-0],T-$WO 3-"T_2G\\W/,TT_UA#YULSQ,RS3#E X M484+#&W3S\"+U$,J\978(S.?&V".^VE.0_LKA,K0_@KMKWO"TZ]F?[%;8/"B M&1I@H0'F<@2Z(QJ=J[8Y.33!0A/LG$'*D#]$U13YT 2[<[#\6C=^..;7][G9 MP>TS\%4TZZV8Y:-LKN_#."U#Y+^,0?:U,,8QQKX/J]3$F=O>XZ^1VUG\:YAL M7Q=M''/M^[ 0;M+D\A#UG_??QN,:='?6_;!I6R9JL04?2G 6,05P)(HNHT8Z M.IQ-^XAV@@[(WMF;?UA3-=ZTEC$GS5FPM5JG;%7%G,EM^T5N65K*PC(]Z!_U&2PW"I_17,TU+0/,W;!1 M0R>_F1KI]U(K/?;-6?71B)%3/ E]Q052<:NTEKP+B7BW4W5 M_[ *Z,[(\*\/.[+SQ3'!:4,XZ7?S'BKTZQ-MY527S$F6\#NU%%,FD.DB$.D8![BZ1\# M%!_8CS1^&Y/H.3%YXG4_[*4=W^&[;NE=0OKG:S:GEO-K _N4G C=R+/Q?Y#_4VS#=) M_!L]#B/5U%FFEXM+=#=;BS'+3)S)9R 0.!Y'XBI7&]T>!S[8O?@"%M?]YB$^ MVW'X6?KGTT]\?:)+<&U83[C2^8SSEZ7^.L;N!/H5HJR:=I @(^&]'2L M!&Q0F,&[.'SFO6 DC//[,L_RPSD9S6GJ++\O"3+7GJ20MY"*T QU9B1\Q/7: M=RD"80+C&C[%G2%!Z&9<<#,\@'BOI\$M*V9N'V\H?3$YL7-6J=&(DQL((LC3 MH!^H*WH:WU5XPMS&M]O2NT3[,+?QC7,;!-,,MQ9R7Q/]1O M^<,TB,O5-GR_C"JPB+/Q#+[UXK"]5=2<([4D:N3G) M2"+.7-'-^5GP[FJY&PO59SHX=XP?/]+;^5/X>*/S,R?KT4%LM!^2(%IEND(Q M6J &"%J0\T,]T*DPS7+?AT;NQ.WY%IL9IF'NF$&_?AKFZ+R)B4Z9G%VV[/R M]$X88WIOJN88C!D(QH)FH_N>[P&-;W VA9G49IUE_3&_V4J)XF*3&.B-=+J7 MN>^S*:M&?MI;+ZT\.V02Y2C0,DFZTYY0)*X$HR-4,OYCXK)WE-NYN7#=[/3* MS=_\]J[2.X#E:QQOJ4>S3#HU3,ML=%U823H[:N25#0(;Y 8E'L@KND%WAC77 MSP%]+4%RY0CJ*3@7_R&1@X! 1$W _Q9L8P_BM&.]&N77Y&CJBI$R6AUU!-W\V*R,OMSBYV\C6+U&WSA MUA 75&F974;CZF3>%D5_C!*X]4[>1WKM&VJY2ZFUD+._(D9=2N_\H)V\ M?6[GBN;WK3?UDVSM6[_F'_(NM@?_:R$#ZY__">+ZS]?T<""^1Q;\"?QUX70_ MHQZH-%#^UC531-;I;P/(T&)> X]_2/+?B#Z!U1P\FBBOR9KQVZ.N-R.B[MET MT)+]33XD@-?WEHX_D-Z.(?,8^+0B.-O2")(@T7/_"Q_L_8L)XZ_"V6NX IG3 M3?#;^^'O#^#3(U(YG^#EHQU&:XC*W$ZSK=\S<0N$X*8O;=,29[L@[=PW=-GL MV-C_HZ6>>@IH%=A=>!(*4F=LCQO='0O>B5R#@&C1>(C3LI!$&T U@HGIYPH)?X!3(C18QW1'P MY?D%_FS&B<;A^^@3R+# D' MAF-U%$?UYN U18'/=^+(Z$//7OQL.OWK5@_^NF5)_(;7?N><7<7!\>8LA[?3 M.8=UZM\W.,.8L-'JQIS%%S%V.!6'[&Z27B]*[5__,/&'Q*6&<;?9$P+N ^+. M!F<*W(HHRMJ4DXDND %O$77.D("%AIQYZP2B;H0 6QX P1$EX&8/CMG>$;L' MWSEZ3ED% ).B'1!Q0?PDB/KA*M=#WQ-C ZW"5;F9RU$+EPY?-3O]!W'SAJ:N M@6D!P9I2)R_6J'X6:I5EJ-9S)/)J@)^$O4F=SE'Y/80(@E MM$.$+4)L1&M!;-R0/<$Y,?L+7/BOKYKC^XC-.4EIX%X3>QL3>6+IE2M="TEK8XJJ=WFJ1Q?A(!;XF^ X65-,+WA74C/ :;GV[-% ;*VDAU;G8FSIJ2TNI-6<; !@PXDZZ5$D8,PV*][<'Y& M]HVE69"8!Q+;J@%X;:Y"3$.-F0^O!G\QH8F#;6CX)VB8V"Y'.!9,%',.P07. M#SHB]H*T_'G,WF7QB4/9,K2LH"72ST9F2B/TSFS0W8VX_[9?N]*0#_.S//M! LQB*I1/(<%I^( MG&,=Y,B@@0!0A[K;V?,I$D>?/S3(J- =0G'^LDQBU_L3[!#7L9E!'U7;()%W75E;@6/@ M%([M=;:GQSZ,IT0Y"X\6(":@C^=(&V#&L2[[3M[W/*4J$ )N0H#'8SH0 JP MX/,D<<2.J+?K;TRHC^>K8_;)BR9RNJ!'YMHA[SHIW8.+RLH08=PTW7223NR$ M930CJN2P,Z131K?4J^7@TP&49AT^WS*@!OTL/CAR#OSXR92,DR?!!VP\OS)3 M\8;(B+/2!)S;#=6X2TL$!_Z]:J<9S+^D(X_%Y,-N!V!R1%$SJ"@>23S?H^B8,COJ0$X*;J! M1+H0I3J>T_\[-S4UV;;<*-;9*][LBB;J]2P2#*3]6:R5?G@VXW'E/0F$YLZW MYR=O"_5"$[1P7VZS+ZD'\MD.K>&^A# 6;DL(8W>^+R&,775?WGAKZ(N6\?>_ M-?0%_/Z0Z\6>??\[N8.#OCY*>.Z/2!];%W:AKWWT5*3M6 MW==L\18R=LC8WY*QWZ',;GHLR,WZF5Y!*]1+J)C.\-+47\"2NT,.?BD0\C4* MLU\*&]S?@<;KE#":AC7IB98,FK.R*J!'V)R,JR-0:8M?&F&Z!1%>R<3E-*A3 MI)6QK86&LL="'U6V!JHJ6C*GFMG=42> #DJ<'AZ817:D4QJ(_WSZ7 M:DRBE MZI1RH(=K*LJZ'A5TM#PYQ\]VI^CHQ>K8SK>VDCU.@41SH&>+U9OUD'OV7IZ7 M"ZG0+5VC'9O;E^44J;#V>#X4:Z5:MSUA)@QNF4V?]]T/\2[$NY^&=_01WM$_ M".]X;5/)/Z8;+-L=MXL<6"[ZBUW[Z^)=3NI3UEJ(1UF@+.HSBET-AUF$=XE? M_\0?XL]UA_D&41A$*%D^*\7ZIE[GK5#^SLCP@4=H[]#KO \#^%8(7]UKY<1C MLKMEH\V-E(KE,JO>N;HWZU2U$S4):VI* ZIEB) M&[4VQ*ZKF)8_"YS"B,&/>.?;QQ?N@ @AK_^(=_Y.O/X-0B.O*U#AK)];G1*Z M)#_ )7GB=;]U=4K(V"%C?U%/K,ZIG./>$L!+.H4FZ-3]/RH3O@:$)G+FXOR#83-H/1M6FF26; MZZ%:G.X[S$[+3)(H@.]WA PK2D+ ^N& ]<:*DCL#K$P+I&:#6'=,B@W6'M,K MLRI(SW4TNE_ FO"-,A 5$4@BKPK*,!6G2&H. 2OQ&L#Z^H&/\_IFKPOH1Q8W MW]E+AQ[?#_#XOH0E>A=P_K8Z0;>M;*!(<,8/:E4KG>Z0P)*X76+:G*8>OW"1 M8"T]9U:3]'+![HQ1H;LO:%5K.I^DD!&;"C1="XM00I@,8?);5E1? R9;*ZG7 MRFP:Z3XH#0IK:E5+SHS9-ZP9;7?8IN9^LY,G^?)*^NMD9PD\(/U\*?CZ]A/D2_"1RC6YSK92J M+)V)K<1X0C$ZT2\,/X\3OK96N\TJN=(S^:)9G^E2(0/AYRKFW)WY>#L:KZS5PV-R0\N);PS\_ ^PO-W7%V(S,/SV-JB,T@D69V/LXDF M/R@G2&8X'&V^9(&A7$]I6JRPIJ7J7)DV6MWV8T/(X-VY?DGTG8EYB'8AVMV\ MEN3^T&X\M\IV3-''))V95^4:V&TJZOQ+HIW!;GJ+)%]^[$?[F<^K>#IL#AUZC??E-7X)"_1>D/@#.J96'NL:.^OO>V1TPI$)*;I=<]37 M-%VK-7V@L[-EG@5"+*&NZKK=E=L3B@E/\X60%T+>5RMIOAKD5,.P1_1,C$N$1 ME^]0(WT9X$&32\\2A=FL'WV4]_%&9I'*U[\F.J]KN\XT.Q[2?3J3;HX5IIPA M&] @C86QU!"Y0N3ZNN75EY%KIX-MD9F7J;XHE?*3DI2P9L;7=*5K?5.M%;:5 M2K\[C15M/;'K)$<8N;YC7#1LFOLC0@9AT]R0UT->#WG])S2([FD6)Q.B:AFB M:HH\L4:*'I4O:VX=M%?W+(3^QG?V-\+:#=?5Z%J<*D 3&3L;77Y%CJJJ$"6C MU5%/W,V+RTG-7?*L? T#9 MD_^G[/Q]?C!/YE9&N;]*B]6]EJ^1\@#:^0E\@Q49B\3C8?N@$#%"Q'@/8IS& M)5B^5R%K&5DF$UUC,1QNZ4W#>*YO[CTBQBX6+S<6<3E%@O5BE-@6VN/X>HX0 M(P$1(QFA7KXYZK\6-Y7!/]ZPAJW Y_,?Q0+X5R<=!/E4%H(\=R+DO"9KQN__ M2Y)3,DZZXZ(.;_^F:#C^M2@ 7P0Q@JC:G/O"@KC^YW_P'_]1,N ,)#>+D^

K7J@%CV".:4;D:K)*(59O747DRC*/KFR'Y5F?.3 MXM?&#$S6GOHXI6E4$28;4M&DRBE62M.#KW7BB1+3,EQPDAH:P(*^%D P!S>@ M<8%@?:GO"9X9<4G):Q35@!2[O>?XTB2E29%/"4M3&CO&)E#F)2WGF8=2)#2O MBM-8D.8.,^2_>4=NXYS&Q?3 RJ+ :$MRI>0#:/]"_.AJ/%$29E;-\.>*-3<_ M.7<(+"L]L#G-RV_CR*J7J)^QY/X$)FS1*H_)1_[ &PS&X!M1"^8,K0=+I-IG MY32^/$*^HOF+M31"N_.7#*=(<5JF/I+H*]BU+<8SZ+K%Y\L)2)=O6).U$GC3 MMYCE^_N"Z7[SZ?;J97!Y1:LBG:RY49QQL<9':/&%D&8*9-Q0'P=YMG:OF)JDE1E2>?9\1J_]O*$DTZB [WU_9)!?@=IQZ;BN'ILR3Z, MG4#TV".-$ZMZWY>LE<4NQP];;"M!.P'UB#&'MAZ0( !,' 9 >&PO=V]R M:W-H965T3N+X .P<:H"F" M.&Z?:6EM$9%(E:3BY.^[I&3911VC*/HB\9B=G5F)R]%&JA>=(1IX*W*AQUYF M3#GP?9UD6##=E24*VEE)53!#4[7V=:F0I2ZHR/TH""[]@G'A349N[5%-1K(R M.1?XJ$!71<'4^PQSN1E[H;==>.+KS-@%?S(JV1KG:!;EHZ*9W[*DO$"AN12@ M<#7VIN%@UK-X!_C.<:/WQF"=+*5\L9/[=.P%5A#FF!C+P.CUBM>8YY:(9/QL M.+TVI0W<'V_9[YQW\K)D&J]E_H.G)AM[?0]27+$J-T]R\P4;/Q>6+Y&Y=D_8 MU-B8P$FEC2R:8%)0<%&_V5M3A[V ?O!!0-0$1$YWGVLIHT^H TC>)#"9!IN18KI[P0^:6R%1ENAL^@HXPTF78C##D1!%!_A MBUOCL>.+_[?QFK9WF-:>H8$F9AQ[=$@TJE?T)B>?PLM@>$1TKQ7=.\;^[Z*/ MTT91%_Z*&J:I+-UI(IR@(W<(-( [+IA(.,MANMN?-_NP*%-F$$Y//O6C*!A. MYPLW"H=G]&W#R_,P[L #,ETI+*P02G6M,.4&ODJM40.EWV6X%]JHR@)U!VY7 M*ZQ-D+C\';C6%::PK P(:>"=FAPZ"'6"#[1;+4$\)%[X)E^Q6*)ROUP'3(;' MG6F826MPZ^QN.I^UUAHI!\.V%?&H%MZ92W<>7'5@CFM7@2!L8#^9LA*M=S"R@;%ECFWD#==)+FTIM75$A^@/1R2R%3=?-,D_=PB>R +A MF;U1;)/WJGJ;L'UQ,C2M;VE--1$W3"C6PN5!=#^2DJSG=@$[3TX^050 M2P,$% @ CX9[6.1[AVZE @ '@8 !D !X;"]W;W)K&ULI97;;MLP#(9?A?" 776QXZ1;T24&FG;#AJ%8T>YPK=BT+526 M7(F.V[V7Y%(^40C:HG30:+);+Z&QZNII[_^#P M0V+O]O;@*UD;<^L/GXMEE'A!J# G3Q"\;/ >EQOEPA/ZP7?*SGGGR#3;8%;0 M2#VLXG[['O8"3I(7 M)M0!IT#XF"R@M!(EM8TX/UWDSSFU!JB&9Q4OL?Y88L MWTJ.H^RF6SN\ZU 3X(:?;A$38_UEG&\1JP&1OH"8IG!I--4./N@"BZ> F/6, MHM*=J%5ZD'B!^01FTR-(DW1V@#<;BYP%WNQ_BAP0\^<1OC=.72MR7$;\\3NT M&XRRUZ^F;Y/W!P3.1X'S0_1_$W@8D2\U3^)-GK3.M.*+C&UE@"[BG?&#!-WGR9P%=VMQPC MN-,<%-+ERCC.);4'.83<:&>4+(*"4FJA<\DP1VQHO(BCD'&G5CK0AD#TP@8U MWN9DI64I<[$O7+"2/.^L?5H8F8!;"\6)$(8)YY/#NB-HK31VY_-8)-6&UL[5SK<]LVMO]7,-YT-YVA93W]:I(9V\FV MV=LVF:1MYGZ$2$A"0Y$J0=K6_O7W//"B1-%VFMGISMP/;2R)! X.SOF=)_#B MKJP^FY52M;A?YX5Y>;2JZ\WER8E)5VHMS:#F$VE9$8O MK?.3\7!X>K*6NCAZ]8*^>U^]>E$V=:X+];X2IEFO9;6]5GEY]_)H=.2^^*"7 MJQJ_.'GU8B.7ZJ.J?]V\K^#3B1\ETVM5&%T6HE*+ET=7H\OK\1!?H"=^T^K. M1'\+7,J\+#_CA[?9RZ,A4J1RE=8XA(1_;M6-RG,<">CXPPYZY.?$%^._W>C_ MI,7#8N;2J)LR_Z2S>O7RZ/Q(9&HAF[S^4-[]H.R"9CA>6N:&_B_N^-G)[$BD MC:G+M7T9*%CK@O^5]Y81T0OGPP,OC.T+8Z*;)R(J7\M:OGI1E7>BPJ=A-/R# MEDIO W&ZP%WY6%?PJX;WZE=7:5HV1:V+I=B4N4ZU,N+Y>_O7MR].:I@#GSQ) M[7C7/-[XP'BCL?BI+.J5$6^*3&7M 4Z .$_AV%%X/>X=\;5*!V(R2L1X.)[T MC#?Q*Y[0>)/'K[AKF3S(M'L0U)5+LY&I>GD$RF!4=:N.7OW];Z/3X7<])$X] MB=.^T5]=2Z.-*!<"QM[(2J+\=M'X]%$N>ZB;>>IFO>/^:A2.JDRM02NZN?>T M$?JH.O54G3YNM6E9&-C7["#7OF2<2_&V$/^210/(18*8"&F$!%PRH/[X^,VG MXQ_*/ .Q,O\0ZEY5J>952I'*/!?EAE!(%^)=6I=S5>$PXR1^3VR:*ET!Q&2B M7BD8&U$5Y71R\8TH[PI5F97>P!"U@GEK'.O]FP\W K!9/!L/IH />6XG2:59 M 8U%)B:GY\GD?"+,2L);2!$.?E.N-[+8_OUOY^/1V7<&5KM>PYN -^EGL9*W M.*T4MS)O>!&;357>TV[E6_%L-IB<^MGF1'&S@3]Q9#08^'9=R8R4K-*I>M2T M\,ZAMDM80MB] "%X*/:U&IM M]P]0Z7]D+L&V2?%:&9FGI;@#P4!KB;M8XMP&6"B!#>7O2!0*@%PUB?A!WDFM M!^(="%93*#%.K&#MC6CTLH#1)%H;$ @T8T(N*Z7 .M9@+^H5T?]#691YDS?B MNI15AD1_DLB4C\UF YL&Q&0*ATK$O-%YEN!.5H!QDX$7.C,XW:B#N3(-FTE9U:\D&NU18, MTJVNR@*9!CN+L^5:%BF(Q=LB'> 08-I+D-H2Q9)(J5>R=FPR+3X!/<0'_ YV MO%;\L0;/J*9M6%3E&VP&J :AC? _ZP5M M<-# _0+4:ZI*%>FV"_:?-L*E^!E09['S+>@#,EU6L$I "5YY@"%C^7:\5M(T M%>DG" K(H7AV/DU.S\Z9$=-1\2\[CH3?85,1< M8VP'1(<-2?,&7X4]1EP=#[][!Z-6^$.Y5N)8T$?Z:?0=/H5SRM3*.*&=-W6H M6C7\PY3#'O(@?7MT[O?HO)?#-V"1B&@T34*!I(!UP6FZ-NL+A[H45T3U'A?; M"+.2&0#6!H +%@D,^77P<0!FK/A,G]0]*"4-LU 9J#Z@#GR-^YF)7*\U,V9' M>4:G@PNG/8-'4J%RNP*8U$D:4D&;TQ2=\XRG@W&8YT95! PD@PM /J>,^Y;V M6JXDQ',[$P#T.'+:/\"@)4D1?:X0QBI%@,+B@U0!T[U=!^X#IV"6@LPEVG$[ MXX ^A$T2OX() U9^K E4,T!U63$?P-XC()/]#!M$?-)%/"8Z7UT,]LK"2K?# MN\E@V (X<&.\I4L>C4D77MXO>H7TRK$2<%3!V@$QNR2]=Y#N.*-CY$OQ"T"_ M"OL7?A(R-R5\IO>!_653B0:T&AP=Q"S8M HCUP1M*GDH9<'> N[K!C >@G/: M9@C&$_R>AU:$&AH5A,/K&!-Q#K":E#2 #87Y,A(E%)(4(1%]%HYN06@'/<1; M=!-RS3_-8;O0%X+MPS_I&9@=::FKAB-]/T_B;&PPW:H@@@(I!"/^DX-D<&9H MT6CZ@+YKGM4]%Q%HT%E68JX4NMVW)4Q&?I]?G'6/([*0?%[-0/3(V6@80OAA MOZ2!CW9'RT+R4\ I78N\!.OM!YX#]Z)R,#A]:J, M)@J<1:WNR$1EX*%G#6$J#0_:#^/(.?I*6P!.%H'VZ^ -5DODX0+@D"PP>T>R MAU))\0 &7F"+"QO0Y2X7%/9,W:\D;)45*1+Y$H2DUJ 7."HZ0>#I@@4P7N#A MX?D6Q*D S2!?#_9[3O$:O-H'':,H*S/JW82WQ2T,7%:=GLQCW^T+JT?C0,JX MW]@ZH;?N'O()'.>Y]6X["?Q3(UZ2NG'HB'Z5,PC=\:/78Q"4)6Y5P=N#3WM] M!5E8DPPHF:Y\*!8%KFEIR.B1>$/@ 8]IB'!H=^$U,!(02I0%QL\5YE,RA4-J M"D72EQV MJ1?X2U8%T=SR?.9N)3 '&@N(E50=(2 ,C8 /BUFIHN75^&48MT;:/!_L6+. MC">C@!:^A=X,U44# 53=5-8]=9/.;6#D9@.^(:.WX*NCTM8YHR^2SQ)@8=A. M1FD#)PNQA$2LBR1QEW^>*RU>]7+U,/^"18X6] ]X8Y[K)=M4-,+6LV-+)&). MPJ\R+!"9S-2V/5W#.+>1.JB%>Z?L?8UMWM.X^"':\D4#^Z<"O95:Y&PS* :A M>)'1OB7]B4=BMQ-;?B!K4OK5M$C%3 XE\!'4#(#?#,+=%8)R2,/).)J6$2@ M&P%E./D.1OUJ&N)]E*\D,81P]7:#N8,<]0Q"MEMX .$$O?6" TD?%Z)>1!;K MEXAG[FOD*AD[RJY)V@@5@;[FDMV0A;3L#HW[)[4&&"#@-@3VE81-M(2WH9 M)F(0CSC9:7$&<8@?0B5]P)CP[R&/<$(:4!I<,3JK(O/'D M"<@ZJTJ7V: M63E,ITD#'Z*6K2$[RX_$?TIL6P(%0X*#R ':Y&!P,05)@+666Q\&KTN*A650O5[7+Y2G M1KVEI5?O*TPXUB#@G$8EF( I-ZA."6YII\OU9P>]]!AXZ-]KS!H3"LQPTZ9# MF[AZOS^BF+:>>*UA>S78;MQ?LP5W>RTFK2?>+188IBT: $&T&@FHX3W^878& MIM=&[K7?%)@N#,+:7_^HP#]:E9@V6&.>PJ:S/JY0-2KT:WD*3:D5YC157#HE(V;'FD@JX@!+T[K)@ MX$V]:^S1];6F/1$9: 3Z3G)>5E:#@:. WP:+)C83SV:/'P7HDS4+!<7P%@?C M#+*-S .90, ?8$#T@I*6;1<7R;:00)8L=KUK^1DK,+%5X0#R6![G^I9D&A?1B3Y/'*,W M,@UUZ%%_&?G[WKI$)YU_9L" D/^,$O>'=J&=ZU76\T6?'?,3AB6YEE0.0U-7 M5H9+=#:P1#^#T_@L"4Z@R66PGBU- 0-AY,,C^5(- )_4%6H(9^OS/'NDJ;- /E^$ M$W:+$XKM,2V%;F:1(A9%80K'/IQXWV'M0%S'=7;=EB!>!QOS6.ZB/ 4[^$_G MO*:$;)OQ&,JHC&5@G^>'LO.#QRC.^*^G.+WZ@GNYRQ[>0">4.]YL^^$#NO7_ M>O57TZN'U I%[&>!^V%EH98E>",U M)5>JM3G.5;$$?]+U83C'K]V/A,XK9F;VFI&P_H/4 GO*"A^AQB/TQI55F6=G M@_.X5ZG=5]5FU:'&(9IK1Z8\?RBGV.(.IK[.@.J#/'*F_77C?5$'+IDV$/V; M$#DN2BP\4 @L*[FLY&9E#J(6@@C]%KHHC"E3XC>G@HE9/1!!/(.0W9 O$N'3 MPCIZ49:XA6DXM<$B:*[WL"NL^*I5)#WG?J@KV-1[SVR?K$81/;_H>&)9 7T8 M1"PT6*#%PS _Y KM4A747).QW C: -0VJ7KY"GZ5Q"U*SBDYK8#0!?P%[;]!/EO D&!^:1=M28N*('JP89C8&61Q30P*;>FH;@X MU?09V Z2F%Z>+D@LL9[LELW?[/<8^'0&0'S/$J2#-@J@+ KZLB"GO&R@^D4T MS]52%P0WOL-MH2M0)I!Q%\:S[EZU.S$YM0QJD.H-B1:6!/&'N!Y!<[25MMG8 M_%!M7.1-T3+M$GSW4X^.>CFS26]J9U@ ST'1/C:AYL1-0L8T:T1;5$E82\+L M:POL6OZ.14W'_+NRR;/#+(WX!H,2*&"I!$:5+G,NY!(B_"4U_%'T2ZETZ@*J M>,-0-G:M!<"_XTNTA#;C$&MPZ\HW'2[8"F!JZ*\/;K2Z1 M?O07 GZJ9V% ML2I2%(W/#ID]!:%,CFU$@?6AX0@MVWO4#FWC9V1SN[+Z3KW8]CE1L#8TQE]? M]*6O"W5GU\Q)0;82\:+F>.2&:8[ T)O8]N#>E^CB<)!4CY61.]2IBS'> :OX M"(*-!YQUH[VW,=:C ?9+P0."SZ;" "=]%WO0"U@-/8B8%I,G5J/EPW&!AM8 MP-T INXX+&TFQI5]_EW=:V,+91EM6>@+X@ZUC-JHL<,05D#*8HNT!4(U>G$= ML9%XGDJW VA W#LW[WY[^_IX= %?@M,%[WQ+(F<>&(T:Q" @JQ1)V([C).]\ M,I&9(ZQ6V. M:3^R\[3O.Z*^/,0]UPZLXV:S5A$15I!3C^H$JHKM)IF%*$RQ:Y0AU_^^GQ@=V-["S G6"NM[?NB_)QW7?;C]@I%.T][:A!I#TF6O%-; /8U04^N\%3(V:A>)75Y_B(#_>1\]_H ML:"68N$1:[^EBSZD8!&!9WAYD8FTCD$@(=3%C8J)C&DC](\:T$( RE 866RK MSWX!;(+R@"P'\F.N?F:[(:B)C(P,G0G,P==!:X,J2W4_3)!M;#I0X,:AO2P*?NB@^O(B!IP.)V[U6$Q#%QCV(L*0#">J0^!W3? M([]]],$]<,',+VVAZ,:M1^U =Z!E\15DY'1R.+?85^L,IUM'_<=2L:G7T,FR M[L+FH]_N+;V&\U:C_N-2?,*HI]#Z^-=["0J'BT;]1X+>\F&G6MX?:$E^_.N7 MZ!3:PU,VQ+&I,@YLN7+!FJ *D!BRUNB.@6\IN"9#_0N^/5T;=_[/AY'D&Z/3 MA>['0E6$T/+>-G!@GQ'6#K@I@:+BME3O]+]:V.76N=_MV5<=K@0VG7T;]QU]<)ZAM[#QT&/OIHURVU=MG-KF/Q'*BA5-[26# &I\, MHX#+_6!*".?5X,%6J,?^^[^(@&_V$=#]3NT:!(.D\?#5.+BY&R?#T5'P,';GMUR[. MDHO3T^1T-@P4GB?GDUDR'9_OA>?M=T=GR13&GYY-_5>GR60\3::G,_%+B49_ M?W&C\V$R'HV2\602?7LQ34;#:7)Q-O9?[I%,CHVI??[(R\'#?6Q??_-NXBZE M_56>G263X6ER-IS&2Q\EIZ/39 S\>N?)Q:C?*'!*09UTB\BP6$O?E 7F. ML8O3?#978!KR)=RQ:O0HBNRX 4JH$HR0:[UX0%'*<"7I*[L''S@6^0UD0P.A2HPC6M,PWC=JM*Z5$M[N#"W M;?9#L+=K00(@0G6W%M@@#/SA3;EIN =68NH%4WO?5[@2'GP@;OPBL")O&Y*I M9Y>".,SQ49NNSPRN,9)5=O?7&]]&AZ_N-I#;XU"A@WPRI);,&1[T=P>HD&+; M_&TMW(?HZ!NWF.\,XP;PEB@^0("-&NCH0>R1AO0*\\DW*G8)2]>QDNA52FK& MP8-EO7&"M=?([8T"6(RU-B[,"8V!=F3W.MUQX/,$W"!FC_M%81R_1-M K7U\ MK8<_\M+13TT["8X#M9&0 /(8[;Y_>NJX+H^YU=/_V(XW\-B&+SVOE#L.[IO0 M+<7N*+@]7F7CWDR[FG*U;W11N+@1*"*1#DFVSSMT;),[<,Z,!2JZCYM(L4MF MXD?CX$OO57%5.![CSFKNGI ).$"UL$VI^68*[K)O&<\G8%-0=WL?15.[QO-N MN,%A<'Q_)OK=S;%]Q-\,0;T??@H42KS)(W#D8@"9_F8B5)QB8UM%4!:HKM^DJ8T--1Z%M:;:+ MCI&+KE)! ,1;*2+PC!RQ%M0B_+4EF:O\$4=VSG_'%X-0'A;9LWLU"-WW8M_H M7FXH+8<6G(\*0E,\BW%35A #2I=GCJ?W._ QV@&6ZT/\B@@&.L5&;SB$M>WP ME.<[;-MJ<$PUFHS <]O-HTG"D,"?U9UXS\)4I.H_C0S17OWWXX)W-Y'V;K\W MYB[?JV/LQ3IT[#S'HD;WS3%)^T*8R%.+_"Y_-H98FL1WS/"5,VQA&G14BD4E MV?]LJE SX!N+T*[8ZXO^8>)5VS9_66@^U-KRGN@L)?Z0EVE\9J9U=4/7A3[< MPK5W_TQBSV+Y.W7\ZLO#ON^.&]O:/4_YGN/W2-+W4HF>(G=)DBJ6H)^JHG)! MZ,U)\,G47NZR?T;!4\E76$27(AW8)KKDZ:9T\$%7/)B'W->D?1F&K2=< PIJ MLQ*_Z0I(=\^VUAJN5+(-,%@EL+.QK>,Z?+V-\F&L1@Q4_C8C;KNB#&#J3G $ MT *.85^ WDC73$^]G AG++IV!.>@^GN3L%TF+F)+EM_=(E\LQG1[BY>(]M:Z M?KQ&M 8&+1L\ MZ#&7!\Y;,T-/XB:,0T?P7K=/H3SN^(/,?F],*%>ZCHAP Z"/CBC^C$[B&7]2W/6%#ET442W9)9+CI,4P4UZYEX3L^\_NX6UVPVC9L VUO4E6IJ M7:F$QS#M^U0,3":STV0ZN7#78IW-AO2?:-_P](@\^F0 #D?>X"3_67/_= 7Z MKW8(0GOP(\]@A5N[=BN]]HZ'9V=GR70$>W\QMF(P34933 B-=N7 ROU>5N9+ M%N>OEG U'M?3O3 V3&:S:7(^._YK\?WK\=L: MDJY*SU?AYGNO0V^<#K&DO[E7G(DQ;9^QM D4S(?D>((0Y_;5RZ8(A\F[[S%@ M7'RNO]V]5PGC+U 1*E;[%CS;TX\E<7=1 )U]M97?Y[HU3O>M$!TZ:Q,:NSI+ MS7&<@]]5U@.W@?05'<;A)J1Q_]U%1&EECVYPHUY7T>'IH_BL9)]'URR 6 M2[IDVG"5A6]B]M\*=Y'U%5_?'![G6[!_DNBZ@?.J%O#J<' V.V(.N@]UN:'+ MG.=E#3)(?ZZ4A,@6'X#?%V59NP\X@;_>^]7_ 5!+ P04 " "/AGM8C;>P MW>L# #J"0 &0 'AL+W=OPYTBNJTJIEZ7(.1F[OC.3G#/UZ6Q M G'C1Z-B?5D)>63 MG?R9SQW/$@(!F;$(##_/< U"6""D\7.+Z0Q;6L/Q>(?^1^<[^K)B&JZE^)OG MIIP[J4-R*%@KS+W-U_VZ81G, M'>P$#>H9G,7G3W[B79Z@& T4HU/HBP=LO+P50&1!OFC#L?0@)ZV&HA5$8 T? M9'P:\_.G-/#"2W+LNVRYR#$HFL3$2!)YY!68TN1.L-H05N<$?K:\P6XT)'JC M<<.U47S5=CVF7[6!BH1O-+X7!<^ %*VJN6D54%+P%SO0[X [,W]G]@-*GF$9 MOA-_ ^S!4HJ<\*I1\AFLJ28/I50&E(U9O-64B@BK3%!>D6]L-=HJ'F.>R%D\ MY"S^Y9QA1-AZK6#-NIB@1,$SU"T<2MMIV,<2XR8%GIRV8(UM2])5G'79X.*U MK!I6O]HT^I-+O=N)Y'L.6#NKUV%!RU9E<'ZT$/[K]Q\,8-_L!%L5JA7FP+;K M;MVVK?T+R#T8QL5 9*=P1D*/^G%*O=@?"8.83N.(>GZ(M2F>/IB%$8VG,1JE M>U% IU.?>DE"'K EL>;T![/IA$Z3A":QMV>8TC2,:12DY);5;8'W1*MLN-_; M^A,:(7XTB0910L,@HE$2DT=IV"'G_-2C@>_3( Q'TFE$?2^BTTDP"#]0SB3> M?!KSC 5DQG5P\3\D[QK)&-7V-^E'+R<3&GH)G7C1V'6?)GY" XS7]P94UPU] MR]O'@H&:U7@L?(CRE(9)BK]X+\)HQ8$M$J2I^;KN0&Q\\.H]F"D:8*+B=%]0 MH2T++(]DFRA]K$#.#I7(V:A(#AT6[NC^K4"MNU>&)MU-TU_%@W1XR%SU]_=> MO7\%W3*UYA@F 06:>N<3/"!4_[+H)T8VW6V^D@;?!MVPQ,<8**N ZX649C>Q M&PS/N\6_4$L#!!0 ( (^&>UB/[K4#Z0( & ' 9 >&PO=V]R:W-H M965T/W<7GX=KI>]-"6#)4RT;,_)*:Y=G MOF_R$FIA3M42&MR9*UT+BTN]\,U2@RA:4"U]SECBUZ)JO/&PM=WJ\5"MK*P: MN-7$K.I:Z.<)2+4>>8&W-7RK%J5U!G\\7(H%3,'>+6\UKOR>I:AJ:$RE&J)A M/O(N@K-)Y/Q;AQ\5K,W>G+A(9DK=N\5U,?*8$P02YI$"YF(E[3>U_@J;>&+'ERMIVB]9 M=[XA.NA83&&O+ANYA),!^'OL5S MG+>?;S@G'2?_ V? R8UJ;&G(YZ: XB6!CP)[E7RK'B$ M+^RC#EN^\*U1OQ9L1Q6]3N4NS9E9BAQ&'MX* _H1O/')NR!AYT>$1KW0Z!C[ M>(J7L%A)(&I.WB3Z..W)NXRS\)S\KQ'K _4,=%NCK='5RGTXF8CF'N]?KE:H M]NP ?==4%@HRM<*"(8624NA^\ST)8IK%*4WPM]H9>43C-*1!$F!>GFO1D&LC M,3D'^""@&4]HP';H(**#&$V)4U:*ND+T;ZB0,H['#K+>$M-DD"$-.Y ?,IJR MP0M]44PY3VF$"?C7E$Y+I>TG"[K&)K-4IGISYC*:)0%-6+*K"(W2A(8I^TO. M,/J8T21C^Q:68M:R PF8WT' *<^2O51%641#GI'OR@K9_:^O]IA=/2-.$QZ\ MR/A[@B)2Y$_CX+6KY.]UO1KTHNWMAK1_6=< >VO_?%QT77/GWKT]-T(OJL80 M"7.$LM,T]HCN^GFWL&K9]M"9LMB1VVF)3R!HYX#[&ULK59M;Z,X$/XK%GM:;26N8$,2:)-(3?=6NQ]6K=K>WF<'AF MX)QM MDO;?W]@D)-FFJ"?M%VP/,X^?>;''TZU4/W4)8,AS735ZYI7&K*^"0&0JN8&EVH5Z+4"GCNCN@I8&(Z#FHO&FT^=[%[-I[(UE6C@7A'=UC57 M+PNHY';F46\O>!"KTEA!,)^N^0H>P?R]OE>X"GJ47-30:"$;HJ"8>3?T:C&R M^D[AAX"M/IH3Z\E2RI]V\2V?>:$E!!5DQB)P'#9P"U5E@9#&OSM,K]_2&A[/ M]^A?G._HRY)KN)75/R(WYJLT9R MHK%)>30*_PJT,_.;+)-M8S0&. .QX@@ MV1N0E)'OLC&E)G\U.>2G 'RZTFR/-'_ M=/KRG+,=5'P>RIZ9*[WF&#Q"->Z+Q$/K\$<]@WE9 M9$'.D#Y'=QCPXX>$A=$U^5TC9@;J)2B7G;W09LE^&'E2/ <\>:^8][I_D"CQ MXWCLCT;QD9!-?#J._ E-RW?RY^?.MU8^I3EO;+:.*S-")WID12 M0QM'C/GC\&#($C]*XE<.(KN$AHC)#IJX!4O]*!V3FPHO-=YD2$TJDBG(A2&5 MU!ITK_YIE$1^'-*+@X2BA-'XXEQ.N]-W$A[&QGZ2TM/PA!@SFO2L!HIMU!?; MZ/W%=N)8+MNE*=JJ#^BYPAL&?RJANX&%>7&8Q@H&PI=)O/BU@1SI7/VV>GUG MW=YASQ/-:I#@(1N[=/XB"5E([I7<"->_WK:/0SP 27I"D;+K0VULE3 &&HQ# M0?)665XV>"_ U:&D4F0P.BJQ"1M?V*,C-Z!>;$;Y.;A?PY+2Z+4,_<"+_/WA MV-7[VP$Z5ZO!40NK0:UU2^/<[)VW( MH'1?]B%^.=_SW'-^N8PW4CWJ%8 ASW4E],19&=.I& 2]:4%VYS/-BM^:E<+)Q:[M5V5BN354*N%5$K^N:JYS@J""W%@&CMT37$)562*4\7O+Z?0A+7 XWK%_:W/'7.9< MPZ6L'LK"K"9.ZI "%GQ=F3NY^0[;?"++E\M*MRW9=+Z,.21?:R/K+1@5U*7H M>OZ\W8#96SRO0)V/7(*]==?,MQ[3C8!]P^(S<2&%6FGP5!11_$[@H MJ%?%=JJF["#C%>2G)/ I81X+#O %?99!RQ?\*\M]R770<#_4/HHSW? <)@[> M>@WJ"9SL^,B/O?,#PL)>6'B(/9OA(RO6%1"Y( =%'J8Y/DJ9%YR3_]7C_D,] M!]6>P3!QGOC MN^M#C\9Q_#Y<3&-$WDO#*U+V3Z2/Y%-OY-'0#UY-'F5)2E,V(C] :WRZ2B&* M-%*UU6?G%U,O#&DBM?:F]Z"K,JWM7IV^X6I9"DPH6"/5.D\@A MJJM]W<3(IJTWK7#%?XN0%D'7%](:783&Z#_ 65_ %!+ P04 " "/ MAGM8P?,CNS8# #M" &0 'AL+W=O]F"31]U]_+[3D:?%P=C/;@?@R9=&:;>,=MZWUW'LJATTPEV9%C0^ MV1C;"(^FW<:NM2#J+JA1,6=L%C="ZFBUZ-;N[6IA]EY)#?>6N'W3"/M\"\H< MEE$2#0L/+5JQA4?PO[;W%JUX1*EE ]I)HXF%S3*Z2:YOL^#?.?PF MX> F#' -[Q[C?J6+X77JP6UAR(#=Z(%B:=U"X:R4D=7LJCM_A4 M8IQ?W1GM+:;&$:E):\W6@G/DXI-8*W"7B]CC'L$SKHYXMST>?P4OX>0#0NX< M^5'74+\$B)'P4M'Q6F'E_X=Q5>GE/8XV6F< M<%JN72LJ6$9X'!S8)XA6;]\D,_;N#,ML9)F=0U\]]H>$F W2[,]>?PR4"&5, MO,'Y$^@]X%B9K99_0DV$QE]C]AK5K:52N(1!U2G%IP2?I_3PC_8CPL+QZ/>A MCFR,PCO!79.W;PK.TG?_V8@E!,T:;%=&KSF%\IH:G)P0C&FOA8?750X /Y"$ M%;3,.9T5'"V>TVQ64I9DY.9EPKX;77U?3E&9L3I."7R)S MC_I5.6S6DY*\E'[ D#)7Q?#GQ\H:1 WM(_7WX3B))S MFB8SC)]-%B]R6I2,)N6$[*<=$+$V6,<:]U@+)70%?8G@I1QN;$P,YL 'OZHR M32OTL]3;0,<9)4/"ZB&.]-WK?U!0=R^2.2T6GM \3RG+Y\&@99+B&YX$#&F7 M<*(>9I2GPK^[]A\ '8;=2.Z)@@Z'L:IY'Q/;-M3>\:;N&MC8>VV,WW>'W"-C@@,\W MQOC!"!N,7SBKOP!02P,$% @ CX9[6%;GP)!$ P +@@ !D !X;"]W M;W)K&ULK59M;]LV$/XKA#H4&T!$%/6>V@;J9,,& MI)C1;-UG6CK91"51):DX^?<[2K:L K8_Y8O$>WCWW)O(T^*@]'>S![#DM:E; ML_3VUG;WOF^*/33"W*D.6MRIE&Z$15'O?--I$.5@U-0^9RSQ&R%;;[48L(U> M+51O:]G"1A/3-XW0;VNHU6'I!=X)^"IW>^L ?[7HQ Z>P?[;;31*_L12R@9: M(U5+-%1+[W-POXZ<_J#P3<+!S-;$9;)5ZKL3_BJ7'G,!00V%=0P"7R_P '7M MB#",'T=.;W+I#.?K$_L?0^Z8RU88>%#U?[*T^Z67>:2$2O2U_:H.?\(QG]CQ M%:HVPY,<1MT4/1:]L:HY&J/!'+SLL_"@5 MJC56]V,194LZK78:C"&__B.V-9C?%K[%0!R=7QR=KD>G_(K3@),OJK5[0WYO M2RA_)O Q@RD-?DICS6\R/D)Q1\* $LYX>(,OG,H2#GSANY?E4C5&7]%E7^[8 MW9M.%+#T\%P9T"_@K3Y^"!+VZ48FT91)=(M]]8S'N.QK(*HB[YO5;;\?/V2< MA9_(>[VQP]!L00]=/H&NV^[!R9.+_@3_0A(:91F-&+N(K7M9E[+=F3-10ED4 MT3@.SE!(><9HEC&RN5"MDUJ"EHS1/$W/$!*%G.9Y1!XEEE-N^Z&>YLU8:":U M,*=QE- @C7^&(AKF,?F[JF0!I.IU*VVO@9)*OKJ%N1)(2,,PHVG"9DC !A_D M&^QE@6=UMA6%(8V36;HTYC&-TX0\ =YR>U671#;8_Q=P;F:F+$'.<\P\2VF. M17H2VPM1!9Q&<7)-G. HQCH$-.)GW@"+D6:<@-X-D\K@@>Q;.U[G$SH-P\_C##BKCY/T MB] [V1I20X6F["Z-/:+'Z30*5G7#1-@JB_-E6.YQH(-V"KA?*65/@G,P_2*L M_@=02P,$% @ CX9[6*A71O)$ P R@@ !D !X;"]W;W)K&ULK59M3]LP$/XK5D!HDR*2.&F:0EN)ETV;!!H"MFD?W>3: M>#AQ9KN4[=?O[+2A0-LQ;5\:^W+WW$N?N\MP(=6=+@$,>:A$K4=>:4QS% 0Z M+Z%B^E V4..;J505,WA5LT W"ECAC"H1T#!,@XKQVAL/G>Q*C8=R;@2OX4H1 M/:\JIGZ>@I"+D1=Y*\$UGY7&"H+QL&$SN 'SN;E2> LZE()74&LN:Z)@.O). MHJ/3Q.H[A2\<%GKM3&PF$RGO[.5C,?)"&Q (R(U%8/BXAS,0P@)A&#^6F%[G MTAJNGU?H[UWNF,N$:3B3XBLO3#GR,H\4,&5S8:[EX@,L\^E9O%P*[7[)HM5- M>Q[)Y]K(:FF,$52\;I_L85F'-8,LW&) EP;4Q=TZ,\/&0R471%EM1+,' MEZJSQN!X;?^4&Z/P+4<[,S[G.I>UX?4<"H)_M6*V6)J\N643 ?KM,##HQ>H& M^1+QM$6D6Q C2BX1L=3D75U \10@P/"Z&.DJQE.Z$_$<\D,21SZA(8UWX,5= MSK'#B_\NYTVIMD#)9B#;,$>Z83F,/.P(#>H>O/'!7I2&QSO"3+HPDUWHXQML MP&(N@,@IF?*:U3EG@O"Z[41+:3R12WC@N22-DM^1Z$C(>VRT!MO&;,KG#QY= M9_)?6);M#DT)I%BOX/8('HM+N"9,H[W *:"/R,%>1L/X^+\]D2)034 YFFQ3 MLO39)*2O=G/&=$GVR2#R:1;C(4FH3WN4G.2YG-=&XYC*@=_;UMF($=&7F!'U MTWZ/7"EH&"\(/."\U8#EJI&<6&R%8T I6TVF-:"/EP"A3^/DA;R?^KU>3"XL M4)=MY$+J3&+E&R>D6.D1]FJ=]/DO6*^G$?Y&ULK5;;;MLX$/T50BT*&V CB;(N3FP#2=I@"VR+H,FVS[0TMHA*I$M2=;)? MOT/)%P6^;(#V02(YG#D\PYDA.5DK_<.4 )8\U94T4Z^T=G7I^R8OH>;F0JU MXLQ"Z9I;'.JE;U8:>-$:U97/@B#Q:RZD-YNTLGL]FZC&5D+"O2:FJ6NNGV^@ M4NNI%WI;P5>Q+*T3^+/)BB_A >P_JWN-(W^'4H@:I!%*$@V+J7<=7M[$3K]5 M^"9@;7I]XCR9*_7##3X54R]PA*""W#H$CLTON(6JL[^C+G!FY5]5T4MIQZF4<*6/"FLE_5^B_8^-,2S%5EVC]9=[HI\TC>&*OJ MC3$RJ(7L6OZTV8>>01:<,& ; ];R[A9J67[@EL\F6JV)=MJ(YCJMJZTUDA/2 M!>7!:IP5:&=GGZ3E-'.VZC%BU[K[3$G.XC1 M<0A7))=FQ7.8>E@%!O0O\&;OWH1)<'6&X&A'<'0.??: 15B$O89BT[B*>7XDARS7.-Y M8GK+LLVRIR7;-D%I1J.>DR/'H-6]SO.F;I OAIS72EOQ;\O]9!#^9T,'841' M43 \<.O8;@Y"&@8)3<)XKS\8LY;9\+7[.4AIE+'A;^XG4HE92M,T&[Z@E^ 7 M'D$?,)K$,6YYGSJC0;;1/RA\2B387I9%-(HC&F9Q/Q=I%F8TR[(SA1WO"CO^ M0X5-R5UC&XW#?OP_/N$U;.!8U9]?^ 4*+BX.#GR\V0GPO'2SML2D@"=+%DB. M/ /7AG!9.#E>^0N+X1>& )+)78I:1>8.!S$JO-[-Y:L/#SPB1KC%29S0* W= M<+_S\1@CF01.F.P-LC&6=NR$Z3%AMA>F"65I3![WG+=3(66CF&;)^(#/D0PX M%G6_=]-B+2S;]X3!!&ZD[2[=G73W9+GN;NJ]>O?>^UC7FHCN>@4 (H2 9 >&PO=V]R:W-H965TQ!CBY%I7->L@>)5%445#[=L%PL MKP9DL!)\X;.Y-H+AZ')!9VS,])^+!PF]88N2\8*5BHL223:]&ER3BYO(S+<3 M_N)LJ3J_D?%D(L0WT[G/K@;8&,1REFJ#0*'YSFY9GAL@,..?!G/0+FD4N[]7 MZ!^L[^#+A"IV*_*O/-/SJT$\0!F;TBK77\3R=];X$QB\5.3*_D?+9BX>H+12 M6A2-,EA0\+)NZ8]F'XY1Q'?L_0<><1!+G:]'CRO==&S>%ZOB_L\J_7\_7KF.ERH M!4W9U0#XKIC\S@:CUZ](B-_U6.6W5OE]Z*,Q7*^LRAD24Y0;"\\DRZEF&:)* M,:T0+3.4[7@S^"EHE0BYYF%F]"_?3+;"# M%1,F+4-ZA:O6T*C;<='U>'SW.#ZXQ&TE)6S2P?$'R1:49XC]@-"HFCT2L ,2 M;FRMVFSF2N,$$8*=P"<=B1NWBS4:P(:,*]A)S]&/5$B=V80'L[AD) M$D-==^-XN[YM'&OL.R3<.E;?=Z+ _\_'^M5F5A.AOH,7,^ 6,]7&FJ^:R6(W MP'P^Y'-X3M 3H[(K"1O)CM+9T>>&S_$6['HD/C!RM,O6B I.$E9GSP?3@[X' MYV%TVND1PH4MX<*C"7=+U1Q] $(X:%PM%CF#+Q&P;Q_Y MG@'M:*/4H$X!%?&R_J*J/V[J$DR+U17DZG]AY+%,W&6@W0Y;]8#9B!8F&(&9 M99I7!HV7J #+*VD=M3=LG2%>$J_L!L''H]DC9=?JR<%1B)W8[V:;R'>=, E? M!G@\D0EQ/&^W0$E,CNSA7]3R+SJ:?],*"I&F1H>-?RILZ+),L>6\L"7W+40U M6C[]IK:]>N[3H=^0E_!)(59F9MT-1M67&:CC=TXGB+$3P=T%\;IP\D/721(K M7!>57I3 34^,<+W=GA?"1D=&&.^8XOG$":%XA%@O&9U"I%NG=R]Q$E"I;=J_ ML>MJ-@(@C F$.@7,Y<6BTI;@@,C4NNIZ8PM SW^[$;?$).>S+?*LJZ(:LBW* M]LQ]TY25;[O5VV'HD]W";1\-AYWW@8+)F7T%4%]?3Z ME>83E3,.%N1L"JKX/(+,*^N7C[JCQ<*^-DR$UJ*P/^>,9DR:"3 ^%4*O.F:! M]OEI]"]02P,$% @ CX9[6!;61L_6!@ AQ8 !D !X;"]W;W)K&ULQ5AM;]LV$/XKA+<.#L#8?)%$J4T"M.F&%5C7H&D[ M[",MT[$VO;@D'2?[];N3;$6N%,=%5^Q#(NM$'I^[>^YXY-FFLG^[I3&>W!5Y MZW%6K7V>E>;*$K)_=+#T*IA=G*WUCKHW_N+JR M\#9MM)\])(_?Z5P?#W@4V8VKO.;H"6SJOH;7][,ST<, 9G< MI!XU:'CZARU2^+$[N^=]E]JV\&6F7;FLLK_R.9^>3Z*1V1N M%GJ=^_?5YE>SM2=$?6F5N_H_V6S'LA%)U\Y7Q78R("BRLGGJNZT?CID@MA-$ MC;M9J$;Y6GM]<6:K#;$X&K3AC]K4>C: RTH,RK6W\#6#>?[B39E6A2%>WQE' MQA_T+#?NY&SJ034.F*9;-:\:->(1-5R0MU7IEX[\7,[-?%_!%#"UP,0.V"MQ M4.-KDTZ(Y)0()N0!?;(U5-;ZY!&&#MG7S Z&9V-J/'4?P*,AEK[*';?:S0U$LA5R,22C,O*0ZF9_07I3WRU9]U).^]'PAEE3% A M94<8T22,:1A+\M;<96G5?AJK0% 9J0<-XR165*CDA'PL,P_XKKWVX, 6F:)1 MD% I62OB5"8!2$7/3 D+LX3R)&I%"I8+:1)$Y'7F4LBQK%S#*E"5K<:ZYCIJ M61Q1%00/:U.I0!HDO85^)%+1)$'%K"-,J$((2;B3'2!WV)([/)K<*UO=9G4] M1W[M$0XJJ;$6+(-78&1I%IF'JI^#D>4-!O#CY'K2,7N(_X>!(/\O@?^ZO$?K MN'KAO@ TWJV[L%5Q\BT)0?0B["UN;P*W@&53?9 ^;^G_ES MN88HE/[K(?QBYF!;WF%32",.7(^Z# LDHYQ'39;T=' :19)&H>Q]&0M(BQ#R M;I??0S"X&(:'\@^5!W!I8UTGM,3<08/C3!O\DYX*S.^0,MY'%3 &E2(!GS;D M?=IK7WKIP3X54:98?_4QCP,:1%!@AGTV%D%,$Y'T9_*840')_VTN:Q/SJWPV M#D4 A60 U3B@0H"=C?;C$[!;G54(59L''9E,0"K;0G>@;D5MW8J.KEO60+*F M69[5N8N2Q3:.Z V+88$,QQPVBX6I&\U:.E2D#J_Z"3Q@CS]IGDQ4U1R@IX1C3B4[C#B(F<0PCX^:Q M2X=:ZSR#(5@2,A@^#B>*G\"0L0@G6&R>D??0[&D+E1R=-#>W<(I9%5A!T/,I MI 60=9Q MUNAX7:8&A[$8AXF)1,QM2JN)4O >3)AZ$!]@NVK9KHYF>YWAM>?J+M&!L[)% MENK6&O1R7I4WIQ[,W-^YM7,&I@%[9T!A?S^4 8>1X#;]) +L8RW4#6P-!K;U M P!;9$AUT'T@'3;F.W>U3VW%3;>'1K[KMWO'+](+3]^21VF^I7BJK;V':K+1 M=MXMQ5]N(;#IQY1%"?D=$[$!#?#SRKE'=+3,AL8@X;R_Q082]L6(O$Q3N]:Y MJQ%NCV #6@+814/5D\>"ADSNW(B(#!SE6S)D ZI"AGUZ7U7 !8VA:[[4JPQV ML.P?T^"IW5=OC."PM1W0*$5$N8H?W6_? 95M?QIT/BP)'IWUJ5\^7&]0MXUB M,AKH%2B7T'G)!WN32-$@%/O\Z3BL3Z(KBQ''S((0F<_KK*'0@_DA#93LV"7A MI!.2-Z6'4IC-O9Q6B].UZ^D($DZ#COMVX1MJ M/:'/XJHC">'PIL+A@!WSQ"08+#[97C\S#H'[*F8G>[*(4/B]^[ M?CSU?'>H%)Q^>B#EV$=:?KE>PLS@_ &GW5-!W HWC?CY"6ZL ,M#ER8QLVGHX'H$] M21(,]?P<,$-'RP<(,%1UMY*A1F#:N1PLC+VIKT!Q!UV7OKDG;*7M+>O+YG+Q M87AS1?M6VYL,*)2;!4R%3@8.W+:Y]FQ>?+6JKQIGE?=54?]<&@V]& Z [XNJ M\KL77*"]>[[X%U!+ P04 " "/AGM8MUO@XKX# 3"@ &0 'AL+W=O MWAW)Y5'()]4 :/+< MM5RMG$;K_;7GJ;*!CJJ%V /'+[60'=4XE#M/[270RCIUK1?Z?NIUE'%GO;2V MC5PO1:];QF$CB>J[CLH_;J 5QY43."?#9[9KM#%XZ^6>[N !]"_[C<21-Z%4 MK .NF.!$0KURW@?7-[&9;R?\RN"H9N_$*-D*\60&/U8KQS>$H(52&P2*CP/< M0ML:(*3Q^XCI3"&-X_S]A/Z#U8Y:ME3!K6@?6:6;E9,[I(*:]JW^+(X?8=23 M&+Q2M,K^D^,P-RX<4O9*BVYT1@8=X\.3/H_K,'/(_:\XA*-#:'D/@2S+#U33 M]5**(Y%F-J*9%RO5>B,YQDU2'K3$KPS]]/J.2L[X3I$]8*H:*H&\_9EN6U!7 M2T]C #/-*T>PFP$L_ I8$))/@NM&D3M>0?4E@(?,)GKAB=Y->!'Q Y0+$@4N M"?TPNH 737(CBQ=]L]R75 X8\;AY?X7X[PYE4> M^M$[\KW/WX#*(=$$TP3=%I?4I.KTW:3,_(7D)]Q<&$,])H+@ M[B*M0$6HUI)M42]6']&"W*)1M*RB1NDC_DLT+!.1>*#7PJI@:J:',&;.S(-?/4S>+XYG(T(TRM,?%%SK_0S&O25BX M25JX>9;/C"@FCMTL#?]Q:3[:S1BETP-*WP'AO2W/H:?^!05_IU9/CB^5+"8N MBPK73]*Y*2Q\-_$+LFE[K-?O$#LK]4$O'LM*XPYB"K;JI7D8_:B/B>I<9)B1 M_-Q"V-1FN!$:L*1H.VP_>)@2J&L\74VDGL,SR)(I6V]C&^!.U?,#*#WUVDY2 MKL_RL02+F?2L<,.DN"1HE-&;,'@CF1)G]8R;XO^2M3S%7Y'-3;$?8&]&)]-+ M9X$W.Z@[D#M['5$8J^=Z.+,GZW3C>3\<].?IPW7I$Y4[AHO<0HVN_B)+'"*' M*\@PT&)OC_VMT'B)L*\-WMI F@GXO1:8SW%@ DSWP/6?4$L#!!0 ( (^& M>UA=? 33/@( *T% 9 >&PO=V]R:W-H965T 8Y1$*F75]J$2*]WVV<0'L>K8F>V0[M_/=B"#EK)) M^Q+[?.\]OTMR-VV4?C0%@$5/I9 FQ86UU22*3%Y 24U/52!=9JUT2:T+]28R ME0;* JD4$8GC4512+G$V#6<+G4U5;067L-#(U&5)]:\9"-6DN(_W!_=\4UA_ M$&73BFY@"?9;M= NBCH5QDN0ABN)-*Q3?-V?S 8>'P#?.33F8(]\)2NE'GWP MA:4X]H9 0&Z] G7+%FY ""_D;/S<:>+N2D\\W._5;T/MKI85-7"CQ _.;)'B M,48,UK06]EXUGV%7S]#KY4J8\$1-BR4$H[PV5I4[LG-0.2_]1EE:[+'<\F\WYEC.0S*"W M#W0EP+R;1M;I^FR4[S1FK09Y1:-/T)V2MC#HDV3 C@4B9ZAS1?:N9N2LXASR M'DKZ[Q&)27)&+^FJ3()>\KZ>J:[F#TUS?%1-3T1Q2['Y[ WH+.+N\Z(_B MJS/.!IVSP3GU;.FZC-4"D%HCMG=YRN1YF/>AR%& MNAT.;6!5%1IRI:QK[[ MW#P%[0$NOU;*[@-_03>AL]]02P,$% @ CX9[ M6.:1$,Z#"@ EB8 !D !X;"]W;W)K&ULU5IM M<]0X$OXKJBQL)56"6*^V(4D5"7<<50^_7WM#QC MRV$2DI!EN2\96Y%:W:WNI_NQ?7!1U1^;N7,M^[PHRN9P9]ZVRV?[^\UD[A99 M\[1:NA+_.:_J1=;BMI[M-\O:95._:%'LRRBR^XLL+W>.#OS8V_KHH%JU15ZZ MMS5K5HM%5E\>NZ*Z.-P1.YN!=_ELWM+ _M'!,INY4]?^MGQ;XVZ_ES+-%ZYL M\JIDM3L_W'DAGAU;FN\G_)Z[BR:X9F3)655]I)O7T\.=B!1RA9NT)"'#SR=W MXHJ"!$&-/]^R%8D$37+)#K!=+K MW6WDM7R9M=G105U=L)IF0QI=>%/]:BB7EW0HIVV-_^98UQZ=NAE5&4[;]@_RJF;C@7L0[5>/[G1 M[UC>*/&EFSQE2G F(ZEND*=Z>Y67IVYO[S8S.R%ZNQ!*E&?-,INXPQUD0N/J M3V[GZ.>?A(V>WZ"B[E74-TD_.D7B35>%8]4Y:];JUFY9U6U>SD+%.3N[W,S8 M9L3-V[R?.W92+999>?GS3XD4\?-F(ZQA6>U8T]99ZV;YA)VM&BQN&K8J<_RS MG6>MG['(2B3N%,N6&:]]DC"HF'3_/S=D\961HI)[_,+]_N*SN4H4AT-WBS-5]L/>3WKDVRPMVO"H^ MLM.UI]B;K%R= ])6-07%^ZK-"DS\Y,J5ZQ<^8BKBPB0\,B(]94=A>()%DB9]D-2PF8\&3* GF),K;%CHI-I(K:]DK%%*V6\#>/495JVE0F9$ RZK) M*>F[D,^1MWGM= D. [%J+H#!J+QA+>*QA2B*#,8ECPHE'21A=DHLDX5H, MCH'G!*+ RIC]VLZ1"[G78VSA77\31)\2:F/3F0-^NK5DUF:?@_/\VB_T2Y$Y MJ8[8V[KZE/O.!.+N)PU98"($CV;_=NU&A/?U!#4T+U>4V5O<_E4MD8#:^"1X M_56A6=O6^=FJI8K/VHJ55?F$9M95473EI@6@-NWMMS>Q0GJ+6QIU=?\3#%9% M/@6<3]D'_*TQ])3]TDZ?HB!5DX_SJIA28;BU-R)N8X2:,NP7 A&O"_)IK0YV MN8>+=P5B&>>G]5YHYU]N#)(FY28Q7*4#HK]T:$(F>=>[>=A:4*_PWVZ@!RV* M4R05NZ2:XZZI.9M)M:\Y:#!0='A?G[WTQ:CR]!W#!<*$/9)< [(3A!][I'BD M) !2XCHFG77L!3R2B! %X, NS=+YMKRX_/&*\XN&2MP#U.47DTFU(A_AF%S^ MB:)C#&FHR5Q+ I:P) ,T4VM0_VPP"""%0^,1D"(8%3D[#@6BP'C4%0 !%.FV MJB\Y^JK:=T=T##[3U_>A(I%&Q;>A?!PHF@@E=3!F#,J:'"U$BG%E0B70+40I M2K*@C@&8 K]T!2VL(5U2WP2:1"^S7*DX[IS-NLG.5$XZZ:>AO! MDML4?40<&F31) DQ:B1QW,H?P*NJFE[D13'V$WQG1@L$13A.,=08)VLHJ./Q M/."%'*_%"4$#'>EU5FW(Q16A2^=UVO>WO M#?1J4/8;Z!5!M@&;$&'\4,T#!XILF,WH01/ HY8AP%O"5&!M&)(I"$^D>0JD MNY9D 5601K$==I5=K446#T-0 W76JB&'44L #U(/V(ZLB'6*>IU>0[%0ET!P M9, *4Y@,8TPHEA(S#M /N8\^10:YABY,&:IEZFX$"U354.+;0+8!KL0!G23J MB)9WM+_V_4;@#1P(EDEXXUL)EDK1?<5[@?DV "^<1"R&VUT@J1+#Y%VB8Y&^ M \."+Y.80FS,L52*C0*:39BM$4U2A*BWJP@,=;(7')^D;AB8?7^&I2TZ G#> M!V!4*4[2$JEZ"$+U4+^*@%ZE#TS+4H_4TOP]K(QJ-Q !2/6#\#+J3V.X1#TD M+9-HV)#I.OW>M P8B.XBQ*"'8V7R 5@9^")@2G&Z3A0]?].XMFB33)2L61F( MFZ8I_X^L[![E_!:L# F#!C>5H][4HB1I_PQH=/P@7+$<-[LV3= 6A3TT(C[2 M%O K[\;*4#1 ,*P)\5X3X^-V1$3H:MS)HS@F5 Y'% 8P%*.&HWQ\(RU#,P'> M8].QV2@/UJBQ'P65*WDW4@9OV90>08^>&J+[@0%V]/2:O*.CL1J&'NHFX2Q# M="Q%\V1N167YU! DNNN?=W\#* MT#U)(NYCYKN%E47^P05UP%]A998@$JX8^1.8Z1_SZU$#C;Y8(*SB\.P$D7KJ MBT>[QT1_+(_@V^_'RCSKH@??L4W^&M9%?!/V1I8Z\QO>*)K^C:*Y]1O%-9MH M& I."0>=7:)V_ <%9N:0 MERGD.BFUWS7O3F?1X:Z_^XIBAN_N\?QWGT/\DN M40'9ZP:H,@W#3B,;Z07 "*Z)C<2&PIG16]#C;)XMLF$5/4"G(PY>C V4J"! M%8;]5N;4-YRV_HUCWU_AL! /W 8U0"FN4!8TV,N&.ZZ=[KN=[NWI^@7III0# MA;HA_^+SUY,GQ[^_[@7JE.C$D$!:TPLHNRU^@I=UPVA +H=RN4TQBH?@'6S6 M//L;SG2;:M0%?3@]"<_RR\-Z%![76U=/X$]XFJ)_$K9^]2TV$/'CX3SEXZU* M5:7;G&"/?QOOA0@([Z-< H##@Z)7@X;>_MU'TUOMK.Q@@E"/;\ 3V^.)O36> M%%4Y>U*@69QN4!"($F!)5KNLV08E-V_QT%!R7_Q8O\%(]8AJ)ZC$"1?@M%]:S1,[[[8>M-]5L$*=XZET=,8U:'NOH+J M;MIJZ;\\.JM:A*2_G+L,U(HFX/_G5=5N;FB#_E.TH_\!4$L#!!0 ( (^& M>UAR$^O_EP0 /T+ 9 >&PO=V]R:W-H965TZ",MCVTUDJB2E)WTUWCD+ZW M(]SGRY5UA-%T7,LE/(#]K;[3>!KU6N9Y"97)544T+";>I7]^%3C^EN'W'#9F M\$Y<)#.E'MWAVWSB,><0%)!9IT'B8PW74!1.$;KQ]U:GUYMT@L/WG?8O;>P8 MRTP:N%;%'_GXI$Y+&13V'NU^06V\81.7Z8*T_Z33<<;I1[)&F-5N15& M#\J\ZI[R:9N'@4#"WA#@6P'>^MT9:KV\D59.QUIMB';FU,I:H!>9W#54#ALAJ3I90@99%^R[G:#4W5DN7/@)/" >#?#_] M*F<%F)_'(XMN.&6C;&ORJC/)WS#I\J 7H,W_?3! MC]C%B3B"/H[@E/;I [;PO"G Q9*]8TRGK7[ZD' F+LA[/?\$J3NH$"PTE#/0 M;;%W]Z[H[H^35W7#F'%XM*3S'[;ZT,Q0'+.16:7;!"F[0LNU5G_A1&GS:7KN MCR0*:,(BRF(^(/HQ38*8^CP@G\NZ4,\ KP3]A*8BI,P/]J2 ,A%1WX_)9S>\ M=)[E]KF_3FG(.(VBJ*=$-(U#-)*2+PT41.7%@)EQ=$SLF7U&\4FCE&$V$7-9 M+MOQN+L/:20X3=-D0.&13X-(D%L<\A8J666PSS[R]M M<79T08,$W0[2 85'L:,>%!JKA$7@28 93(8%%30.4C29_C!V_B^27R!Z<.#D MZW^8R*?0_@;Z,/86"M0/7\#61XRD"(20W&FU .,^P6A] 8-J8"E]_*5\6,H( MJQ&G1PKOTQ11EX31"RC$-.(ANIH")AY+)4VN;_=&V TP,Q+JMECE\W(HV! M0;K"&%LSW9-P3%J#&X4 M:]R4ZM)% 6N;HNL!\I,6IA-U+#KE#@:/BA(:#X8G % E-HL-D?B0X M.N,0'1Y<(M''(>\UBM91OF#@4 @0 9 >&PO=V]R:W-H965T MWZQK D_5BV6Y>#"1IUA58ER#I6NPC M+9UM(I2HDK0=__L=J1?+L>-F08M]2&2>[A[>VW,43U=2W>LYHH&'3.3ZK#,W MICCN]70RQXQI3Q:8TYNI5!DSM%2SGBX4LM099:(7^OZ@ES&>=\:G3G:CQJ=R M803/\4:!7F094^L+%')UU@DZM>"6S^;&"GKCTX+-\ [-W\6-HE6O04EYAKGF M,@>%T[/.>7!\,;#Z3N$+QY5N_08;R43*>[OXF)YU?.L0"DR,16#T6.(E"F&! MR(UO%6:GV=(:MG_7Z+^[V"F6"=-X*<57GIKY66?4@12G;"',K5S]@54\L<5+ MI-#N/ZPJ7;\#R4(;F57&Y$'&\_+)'JH\/,<@K Q"YW>YD?/R/3-L?*KD"I35 M)C3[PX7JK,DYGMNBW!E%;SG9F?&=D%VN)U-^/9"ESK N6X%F'.*%1+;$S?O,J&/@G!_SL-W[V M#Z&/[XB"Z4(@R"EH/LOYE"0R" M3Q'>KI$I?40Z/OV%#7BCO)2":B2X64,_]/HA ?6'7A"W 5.^Y"GF*:PYBM3N MY]/KT(M(ZT YXJ8<\;/+8=N&Y>M?-6C;3'4L;LB0C_NJSC<9LIG!FF_Q[6%VH&T:T<:,7>L%& MC\[+*7*"Z^%#P975'W8'<=32)XZ/-C&VW=?6Z=T>#L)N,(S;_@\\?T3D#M^Y MYM3)WLBGC:F-O)0LBKQ)KFP,'UH4,F5[8[)$E?:O0 M0,VI!8QTZHF0VNH6KB\J#)I*&>VOYXSVM\+7$,5V"I+0OO^+Z91]@P]"3JCI M[MRW$7QBZIZ^_DAE)TM=P(<$,2WCP+J#M_8L8_8.S-=!,U\'SYZO.T?<=L)D MQ0IJ=NM#:@E(XIGM8J!.U\-]+=47Z5%4*ND8I?=VWA.L=V4=FB+0(1=X+6.O;B$5S;= NQ MF_\6TUM6SN:E:7EF,JC&+\C$)Y:3VW1],(!;2=DE^[9D-X4UJ[;R-[*#IU[T MO2C\?NIV37YVYB9RB?]S\I[JO\<8]?J[67S*\*6Y_"P-S<(]0[V>,=B<>BWN M^/UNW#H^23+L!O%HWQ3LM6YG&:J9NX-JZBHZ%,J+6B-MKKGGY>UNHU[>D6E4 MT\FN0>"43'UO2-^4JKQWE@LC"W?7FTA#-T?W&ULK59M;]LV$/XKA#H4+4!'[Y:?*OTG6D +'EHA32+H+&V.PU# M4S70,G.B.I#X9ZUTRRPN]28TG096>Z56A$D43<.6<1DLYW[O6B_GJK>"2[C6 MQ/1MR_3C.0BU701QL-^XX9O&NHUP.>_8!F[!?N^N-:["@Y6:MR -5Y)H6"^" M3_'I>>;DO<"?'+9F]$U<)"NE[MSBJEX$D0,$ BKK+#!\W<,%".$,(8P?.YO! MP:53''_OK7_QL6,L*V;@0HF_>&V;15 &I(8UZX6]4=O?81=/[NQ52AC_)-M! M=HH>J]Y8U>Z4<=UR.;S9PXZ'D4(9'5%(=@J)QSTX\B@OF67+N59;HITT6G,? M/E2OC>"X=$FYM1K_(E5"W!$[-1VK8!'@&3*@[R%8 MOG\73Z.S5_!G!_S9:]:7MWADZUYXP&\1R^O>WK\KDR@](V_U_AN8'DJ#8&*A M78'VR=W_=TEVCX1<20O(GB4=XS4&,42TE_N-)#'-XF*T$6>TF!6H5ZD6B&4/ M8([I9G261'2&Q3JV%],HBGXYLC^4G'@W5C-IF.]'YO2H^)4Q/9.5SU6)1TI,PW##26JH 1LV'DZ"I;4&C1L$^T=U1S#)Q-4: MKU!4 U+L_CW%ER8I38I\3%B:TM@Q-H(R+6DYS3R4(J'YK#B.!6ENL5?\-^_( M;9S3N!@GK"P*C+8D%TK>@_8WP ?7PXF2,+%J@B_7C+GYZ-PAL*STP*8T+W^- M(ZN>HW["DOL,C-BBLSPFE_R>UQB,P3N@$LP96O662+6KRG%\>81\1=-G>VF$ M=J?/&4Z1XK1,?231_V#7-AA/KZL&KR^XJ3,_+-52N29,A:JQ:5[[&;*/WHN.HTS@7:(JY.,&D]9/C1 M\\YU'+]" ,;J?KA\T3%J;!"$&3,9%[3,QZ[3;$JC)/O9]5%;_XKDR71!HQD6 M=5Z.#S86<8%=Q<\B$[6>]$@@,P8L$KVR.-. [Q'P@-S*#7BV)8X:SB6V3>16 M@"-=<+;B@EL.X_B*+*=14;Y [?4H6T]@;:-5OVD(']6$4'(SP?2U6&VE'8:&P^YAY/HT3!I/XL.\]I7I#9<& M"5BC:G12Y '1PPPT+*SJ_-RQ4A:G&/_9X-@(V@G@_[52=K]P#@Z#Z/(?4$L# M!!0 ( (^&>UCP'23$L@< +9' 9 >&PO=V]R:W-H965TK.BB)IU339M.$1>GD\KQ> M=YM?GF?;,HY2?IN38ILD+'^YYG&VNYCHDQ\K[J*G=5FMF%Z>;]@3O^?EE\UM M+I:F>\HJ2GA:1%E*O?-B9QY8P9=9_%NT*M<7 M$WM"5OR1;>/R+ML%O-TAJ^*%65S4?\FN*3L7A<-M469)&RQ:D$1I\Y]];SOB M($!_+8"V ;070.DK 48;8/0#%J\$F&V >6H-5AM@G1HP:P-F_9TV7PF8MP'S M4P/L-L"NCVYS..ICZ;"279[GV8[D56E!J[[4@JBCQ2&,TDJ[]V4NMD8BKKR\ M"L-LFY91^D0V61R%$2_(O\C5:A55TF(Q^90V)T@EM'<.+UD4%^_)D]@2I>0F MBF.QH3B?EJ(M%7$:MO4NFWKI*_7JY"9+RW5!W'3%5P/Q[AOQ]"V IP904P&8 MBE[<=R7]T9775$G\]S8](QK]0*A&C:J'AGI%C?@U>SXCAM8BOMP[Y-U/[P